微信小店发货接口怎么写?

  微信小店发货接口怎么写?

  运营微信小店的小伙伴注意了,下面小编来为大家介绍一下微信小店发货接口怎么写。

  微信支付提供了一个支付测试页面,微信支付正式使用需要测通支付、发货通知接口 、告警接口、维权接口。告警接口、维权接口非常简单。支付界面调通也相对简单,主要是发货通知接口稍微复杂一点。调通发货通知接口需要注意以下几点:

  (1) 微信支付文档中提到发货通知接口的PostData,这个其实不是一个form里的一项,其实 PostData的提法有点误导,理解为json串就可以了。

  (2)以下的写法是错误的:

  也不要写成:

  其实在支付成功的回调方法中,只需要写一行代码:

  jQuery.post(url,tmpData); //其中url: "https://api.weixin.qq.com/pay/delivernotify?access_token=生成的token" ,tmpData是一个json串。

  tmpData的构成:

  var tmpData = "{";

  tmpData += '"appid":"",';

  tmpData += '"openid":"oN6N9tzhHOMg6qA6DySr4IgkhdI8",';

  tmpData += '"transid":"",';

  tmpData += '"out_trade_no":"'+orderNo+'",';

  tmpData += '"deliver_timestamp":"'+curTime+'",';

  tmpData += '"deliver_status":"1",';

  tmpData += '"deliver_msg":"ok",';

  tmpData += '"app_signature":"'+sign2+'",';//

  tmpData += '"sign_method":"sha1"';

  tmpData += "}";

  transid和 orderNo 及curTime可自己在页面中生成测试数据,这里主要提到签名,签名的函数:

  function getSign2(appId,appKey,openId,transId,outTradeNo,deliver_timestamp)

  {

  var keyvaluestring = "appid="+appId+"&appkey="+appKey+"&deliver_msg=ok"+"&deliver_status=1"+"&deliver_timestamp="

  +deliver_timestamp+"&openid="+openId+"&out_trade_no="+outTradeNo+"&transid="+transId;

  var sign2 = CryptoJS.SHA1(keyvaluestring).toString();

  return sign2;

  }

  调试发货接口出现 not same appid with appid of access_token; 问题,一般不是 appId和access_token不匹配的问题,因为大部分开发人员是可以获得正确的access_token,主要原因是(1)可能用form表单带各种参数提交(2)非json格式 (3)把PostData理解为一个form里的隐藏域并赋值json数据

  按照本例的代码,可解决发货通知接口问题。当然微信账号的各种商户id、key要配置正确。

  以上就是小编为大家整理的关于微信小店发货接口怎么写的内容。




卖贝商城更多商品介绍:淘宝客返利机器人     威海新闻网热销软文营销    北京电视台生活生活大调查广告费用