经典 ASP:从“Content-Disposition:form-data”请求变量

问题描述 投票:0回答:1

我正在将 Paypal 的 Checkout API 集成到旧版经典 ASP 网站中。

通过此前端js发送时:

        var postData = {paypal_order_check: 1, order_id: orderData.id};
        fetch('paypal_checkout_validate.asp', {
            method: 'POST',
            headers: {'Accept': 'application/json'},
            body: encodeFormData(postData)
        })

这是正在发送的有效负载:

------WebKitFormBoundaryZrUIbyscgWBpTxX
Content-Disposition: form-data; name="paypal_order_check"

1
------WebKitFormBoundaryZrUIbyscgWBpTxX
Content-Disposition: form-data; name="order_id"

3JV215PS364212N
------WebKitFormBoundaryZrUIbyscgWBpTxX--

我正在尝试“请求”这两个变量

paypal_order_check
order_id
,但不知道是谁这样做的。 通用
request
request.form
不起作用,但使用此代码(通过 https://github.com/rcdmk/aspJSON JSON 类):

Set UTF8Enc = CreateObject("System.Text.UTF8Encoding") // .NET COMPONENT, required on the server app pool
Set JSON = new JSONobject

lngBytesCount = Request.TotalBytes
request_body = UTF8Enc.GetString(Request.BinaryRead(lngBytesCount))

Set request_json = JSON.parse(request_body)
   
Set JSON = nothing  

--> 然后我将整个有效负载放入

request_json
变量中。但接下来呢? 我以为我可以做
paypal_order_check = request("paypal_order_check") 
- 那也是空的。

谢谢

json vbscript asp-classic paypal-sandbox paypal-rest-sdk
1个回答
0
投票

如果后端需要 JSON,请不要使用

encodeFormData()
。这没有任何意义。

使用

JSON.stringify()

© www.soinside.com 2019 - 2024. All rights reserved.