公司业务需求,需要服务端根据订单信息,生成一个二维码返回给客户端。需求明了,那就开干吧!(我告诉自己一万遍我热爱工作)
找马云爸爸家的文档去。
啪啪就是一顿看,大多数都是没有什么用的!!!
服务端SDK下载界面:,根据自己的语言去下载吧!这个一般人都知道怎么搞吧
下载的SDK解压后大概就是这个样子:
其实使用方法文档已经说的很详细了。只是马云爸爸家这个SDK不知道怎么了,不写命名空间,不支持composer,所以整合进thinkphp框架需要改写一些地方。
1 一般来说这种SDK都是需要放到Vendor这个文件夹下。
2 这个比较重要的两个文件aop/AopClient,aop/reques/AlipayTradePrecreateRequest。
3 在AopClient文件中实例化了SingData.php,但是AopClient.php文件并没有引入,所以需要引入这个文件,不然会报错
Vendor("AliPaySaoMa.aop.AopClient");
Vendor('AliPaySaoMa.aop.request.AlipayTradePrecreateRequest');
$aop = \new AopClient();
$aop->gatewayUrl = "https://openapi.alipay.com/gateway.do";
$aop->appId = "app_id";
$aop->rsaPrivateKey = '请填写开发者私钥去头去尾去回车,一行字符串' ;
$aop->format = "json";
$aop->charset= "GBK";
$aop->signType= "RSA2";
$aop->alipayrsaPublicKey = '请填写支付宝公钥,一行字符串';
$request = new \AlipayTradePrecreateRequest();
$data=json_encode(array(
"out_trade_no"=>$tradeno,
"total_amount"=>$newpaymoney,
"subject"=>$subject,
"body"=>$userid,
),JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT);
$request->setBizContent($data);
$request->setNotifyUrl("xxx00); // 回调地址
$response= $c->execute($request);
$code = $response->alipay_trade_precreate_response->code;
if ($code == "10000") {
// 成功 获取二维码 这里是获取到二维码的内容,需要自己找工具把内容变为二维码
} else {
// 失败
}