小编J.C*_*lin的帖子

PayPal Payflow 网关 UTF-8 字符

我在让 PayPal Payflow Gateway 接受包含非 US-ASCII 字符的 HTTPS POST 时遇到问题。不管我用这些特殊字符发布什么内容,它似乎只想接受 US-ASCII 编码的字节。如果我发送 UTF-8 编码的字节,它仍然有效,但无法解析某些请求 NVP 值。我知道这是可能的,因为我已经将另一个开发人员的测试页面发布到我的帐户 ( http://ccaples.com/ NVP 快速测试),并且该帖子似乎保留了特殊字符。

这是一个例子。我尝试了许多不同的 Content-Type 标头和 Accept/Accept-Charset 值,包括在文本/名称值之后的 Content-Type 中指定“; charset=UTF-8”或“; charset=utf-8”。

POST https://pilot-payflowpro.paypal.com/ HTTP/1.1
Content-Type: text/namevalue
User-Agent: KLMS Payflow API for Java
X-VPS-Request-ID: 36A4ED051A8B492ABF70E6BE51CB13D5
X-VPS-CLIENT-TIMEOUT: 20
Connection: close
X-VPS-VIT-INTEGRATION-PRODUCT: KLMS Payflow API for Java
X-VPS-VIT-INTEGRATION-VERSION: 2.0.008
X-VPS-VIT-PROXY: Y
X-VPS-VIT-RUNTIME-VERSION: 20.45-b01
X-VPS-VIT-OS-ARCHITECTURE: amd64
X-VPS-VIT-OS-VERSION: 6.1
X-VPS-VIT-OS-NAME: Windows 7
Cache-Control: no-cache
Pragma: no-cache
Host: pilot-payflowpro.paypal.com
Content-Length: 694

USER[8]=XXXXXXXX&VENDOR[13]=XXXXXXXXXXXXX&PARTNER[6]=PayPal&PWD[8]=XXXXXXXX&VERBOSITY[4]=HIGH&BILLTOEMAIL[28]=XXXXXXXX@kineticlearning.com&TRXTYPE[1]=A&TENDER[1]=C&ACCT[16]=4111111111111111&EXPDATE[4]=1117&CVV2[3]=123&BILLTOFIRSTNAME[4]=Josè&BILLTOLASTNAME[7]=Elkjærd&BILLTOSTREET[14]=123 Elm Street&BILLTOCITY[9]=Elm Creek&BILLTOSTATE[2]=VA&BILLTOZIP[5]=22203&BILLTOCOUNTRY[2]=US&BILLTOPHONENUM[12]=763-221-5593&CUSTBROWSER[108]=Mozilla/5.0 (Windows NT 6.1; …
Run Code Online (Sandbox Code Playgroud)

paypal utf-8 payment-gateway character-encoding payflowpro

5
推荐指数
1
解决办法
1077
查看次数