收藏
回答

商家转账到零钱v3的接口,头部传参Authorization怎么获取?

各位大佬,平台的技术支持大佬们,我这边是PHP写的商家转账到零钱,用的V3接口,遇到以下问题,请问有哪些大佬帮忙解答一下吗?万分感谢!

1、获取签名,
$url_parts = parse_url($url);
$canonical_url = ($url_parts['path'] . (!empty($url_parts['query']) ? "?${url_parts['query']}" : ""));
$message = "POST"."\n".
    $canonical_url."\n".
    $timestamp."\n".
    $nonce."\n".
    $body."\n";
这个URL是那个,传完整的https://api.mch.weixin.qq.com/v3/certificates还是只传 /v3/certificates 这个
这个$body 是什么,比如说我是商家转账到零钱v3,就是把要请求的参数数组转成json字符串还是xml文件?
$body是传这个吗?
{
  "appid": "wxf636efh567hg4356",
  "out_batch_no": "plfk2020042013",
  "batch_name": "2019年1月深圳分部报销单",
  "batch_remark": "2019年1月深圳分部报销单",
  "total_amount": 4000000,
  "total_num": 200,
  "transfer_detail_list": [
    {
      "out_detail_no": "x23zy545Bd5436",
      "transfer_amount": 200000,
      "transfer_remark": "2020年4月报销",
      "openid": "o-MYE42l80oelYMDE34nYD456Xoy",
      "user_name": "757b340b45ebef5467rter35gf464344v3542sdf4t6re4tb4f54ty45t4yyry45"
    }
  ]
}
2、签名成功之后获取token
$token = sprintf('mchid="%s",nonce_str="%s",timestamp="%d",serial_no="%s",signature="%s"',
$merchant_id, $nonce, $timestamp, $serial_no, $sign);

这个merchant_id是指商户号是吧,sign这个就是签名,请问一下这个serial_no是需要传什么呢,我看文档说是序列号,是将apiclient_cert.pem这个里面的序列号传进去吗?

3、header需要传那些参数?是传这些参数吗?
$headers = [
    'Authorization:WECHATPAY2-SHA256-RSA2048 ' . $token,
    'Accept: application/json',
    'Content-Type: application/json; charset=utf-8',
    'User-Agent:Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36',
];


回答关注问题邀请回答
收藏
登录 后发表内容