微信RSA算法问题

//RAS算法
function RAS($mch_id,$nonce_str,$sign){
$data="<xml>
<mch_id>".$mch_id."</mch_id>
<nonce_str>".$nonce_str."</nonce_str>
<sign>".$sign."</sign>
<sign_type>MD5</sign_type>
</xml>";
$ch = curl_init ();
$MENU_URL="https://fraud.mch.weixin.qq.com/risk/getpublickey";
curl_setopt ( $ch, CURLOPT_URL, $MENU_URL );
curl_setopt ( $ch, CURLOPT_CUSTOMREQUEST, "POST" );
curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, FALSE );
curl_setopt ( $ch, CURLOPT_SSL_VERIFYHOST, FALSE );
//两个证书(必填,请求需要双向证书。)
$zs1="./WxpayAPI_php/cert/apiclient_cert.pem";
$zs2="./WxpayAPI_php/cert/apiclient_key.pem";
curl_setopt($ch,CURLOPT_SSLCERT,$zs1);
curl_setopt($ch,CURLOPT_SSLKEY,$zs2);
curl_setopt ( $ch, CURLOPT_FOLLOWLOCATION, 1 );
curl_setopt ( $ch, CURLOPT_AUTOREFERER, 1 );
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data );
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, true );
$info = curl_exec ( $ch );
if (curl_errno ( $ch )) {
echo 'Errno' . curl_error ( $ch );
}
curl_close ( $ch );
var_dump($info);
}

打印出来的是

clipboard.png
这个是啥?

参考文档:https://pay.weixin.qq.com/wik...

阅读 3k
3 个回答

由于微信接口响应结果是xml,浏览器解析失败。
你可以通过查看源码或在代码中增加如下代码查看响应结果:

$error = htmlspecialchars($info);
echo "$error";

返回的xml要解析

返回的是xml,按ctrl+u查看网页源代码可见。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题