铁通、长宽网络支付时“签名失败”问题分析及解决方案  [88222001]验证签名异常:FAIL[20131101100002-142]

原文地址:http://bbs.tenpay.com/forum.php?mod=viewthread&tid=13723&highlight=%CC%FA%CD%A8

如果你的是铁通,电信的网络,在提交支付请求时报“验证签名失败”的错误,请把spbill_create_ip字段的值.修改为%2E,签名时还是按.,这样可以解决问题

原因:
    支付接口中有ip字段,有些铁通、长宽网络有时会替换通讯内容中文本内容为ip的字段,导致数据被篡改,财付通验证签名报错。

解决方案:
    商户组支付请求参数(GET或POST参数)时,把spbill_create_ip字段的点号替换为%2E, 但签名时ip字段依然需要用点号。
    最近的样例tenpay_api_b2c.zip已经包含解决方案,商户可以下载参考修改方法。
    在RequestHandler类查找关键字spbill_create_ip,能看到相关代码。
原文地址:https://www.cnblogs.com/niaowo/p/3402000.html