支付中心验签失败,因编码不同

支付中心验签失败,因编码不同_第1张图片
保证金支付时序图

在线支付接口对接过程中,e游客调用,跳转到支付中心提示“支付中心验签失败”。溢+接口开发找到我,说以前都好好的,可以调通。而且,复制请求form表单到一个html文件里,也是没问题的。
这让我想到,当时在对接kubao时,他们要求的编码是GBK。
那么,看来,这个问题也正是编码不同了。
两个应用编码不同,一个是GBK编码,另一个是UTF-8编码。现在要在GBK编码的应用里使用表单向UTF-8编码的应用里提交数据,很显然,如果不做特殊处理的话,会出现乱码。
解决方案就是在GBK编码的页面里编写如下代码:

...

假定一个文本域里存放的值是“溢加支付”,即:

那么,


支付中心收到的goodsName=%u6ea2%u52a0%u652f%u4ed8
用,
支付中心收到的goodsName=%ufffd%ufffd%ufffd%u05a7%ufffd%ufffd
所以,在对参数验签时自然是不会通过的。

附:请求支付中心在线支付接口页的form表单:


 
 
  
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
  
 

你可能感兴趣的:(支付中心验签失败,因编码不同)