为什么智付不断的发通知?
原因:
这种情况商户网站的订单有时、有部分订单会更新成功,有时有部分会更新失败。
出现这种情况是因为通知页面文件(参数notify_url对应的页面文件)程序在执行过程中为执行完毕、程序抛出异常,使得智付服务器未收到或收到的不是商户提交过来的SUCCESS7个字符的成功标识。
检查方法:
检查服务器异步通知页面(参数notify_url对应的页面文件)
第一步:检查notify_url页面文件
A:商户ID和支付密钥是否设置正确,且没有空格,没有填反。
B、notify_url的路径互联网上需要能够访问得到,确保访问到该页面时,页面没有为空白或开发软件自带系统提示错误信息
C、请求参数show_url、return_url、notify_url不要带自定义参数,如:
http://www.xxx.com/dinpay/return_url.asp?id=123
?id=123,“?”以后带的参数都是自定义参数
D、检查编码格式是否设置正确
检查乱码的方法,可用写日志函数来记录中文部分的数据是否乱码。如果乱码则确定是编码格式设置不一致,导致乱码。具体请检查编码格式参数input_charset、页面属性编码、网站项目整体编码等,确保传递数据时没有乱码。
E、notify_url页面里,有且只有输出SUCCESS,且必须保证为空白页面,无任何HTML标签、空格、回车换行等字符。
各开发语言输出SUCCESS代码:
ASP.NET:Response.Write("SUCCESS");
ASP:response.write "SUCCESS"
PHP:echo "SUCCESS";
JAVA:out.println("SUCCESS");
F、notify_url页面中不要有seesion或cookies,不要做页面自动跳转