使用支付宝账号登录开放平台创建应用,应用创建成功之后可以得到APPID等相关信息
接着需要设置RSA密钥,可以使用蚂蚁金服开放平台提供的生成工具,生成完密钥需在开放平台中填写。
为了方便开发者的接入,支付宝提供了几种常用开发语言的服务端SDK。
本人项目中使用的是PHP Laravel框架,下载SDK后,在app
目录下新建libs
目录,将SDK包解压放入文件夹下。
接着需要将SDK的代码加上命名空间,以我的项目目录结构为例,需要在代码的顶部加上如下一行代码
确保引入的代码都加入了正确的命名空间。
public function requestAliOrder(){ // 商户订单号 $orderSn = $_POST['orderSn']; // 商品价格 $price = $_POST['price']; // 支付应用的APPID $appId = $_POST['appId']; // 私钥 可使用支付宝提供的工具生成 $rsaPrivateKey = $_POST['privateKey']; // 公钥 可使用支付宝提供的工具生成 $rsaPublicKey = $_POST['publicKey']; // 使用支付宝下单sdk $ali = new AopClient(); $ali->gatewayUrl = 'https://openapi.alipay.com/gateway.do'; $ali->appId = $appId; $ali->format = 'json'; $ali->postCharset = 'UTF-8'; $ali->signType = 'RSA2'; $ali->apiVersion = '1.0'; $ali->rsaPrivateKey = $rsaPrivateKey; $ali->rsaPublicKey = $rsaPublicKey; $bizContent = [ 'body' => 'test..', 'subject' => '商品', 'out_trade_no' => $order_id, 'total_amount' => $price, 'product_code' => 'QUICK_WAP_WAY', ]; // 支付结果异步通知地址 $request->setNotifyUrl('http://pay.alipay.cn/alipayResult'); $request->setBizContent(json_encode($bizContent)); // 生成html表单 由支付宝SDK生成 $response = $ali->pageExecute($request); return $response; }
由SDK生成的html表单,也可以自己手动组装而成,有兴趣的可以尝试一下。
将此表单返回给客户端之后,便可调起手机上的支付宝APP进行支付