微信支付成功回调中如何给与返回

微信的支付回调中,我处理成功之后直接
return ‘success'
微信那边报错

错误样例:
transaction_id=4200000217201810305986075380]></return_code><return_msg><![CDATA[successful]]></return_msg></xml>]

我改成xml格式返回

return sprintf("<xml><return_code><![CDATA[SUCCESS]]></return_code><return_msg><![CDATA[OK]]></return_msg></xml>");

微信那边还是报错

transaction_id=4200000221201810316667479789]></return_code><return_msg><![CDATA[<xml><return_code><![CDATA[SUCCESS]]></return_code><return_msg><![CDATA]></return_msg></xml>]]></return_msg></xml>]
该如何解决

阅读 5k
2 个回答

是不是你的框架会在你输出内容的基础上进行格式化,修改了你的输出?

这样加个 exit; 试一下:

echo <<<XML
<xml>
    <return_code><![CDATA[SUCCESS]]></return_code>
    <return_msg><![CDATA[OK]]></return_msg>
</xml>
XML
;
exit;
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题