1、安裝使用Laravel擴(kuò)展庫(kù)yansongda/laravel-pay
yansongda/laravel-pay Github地址
通過composer進(jìn)行安裝
$ composer require yansongda/laravel-pay
生成配置文件
2、配置支付信息,填寫到配置文件pay.php中
運(yùn)行支付寶提供的工具生成如下:
將公鑰文件里面的去除-----BEGIN PUBLIC KEY-----與-----END PUBLIC KEY-----,將剩下的內(nèi)容合并為一行,添加到應(yīng)用公鑰中
將私鑰文件里面的去除-----BEGIN RSA PRIVATE KEY-----與-----END RSA PRIVATE KEY-----,將剩下的內(nèi)容合并為一行,需添加到配置文件中
配置文件中填寫對(duì)應(yīng)內(nèi)容
3、拉起支付
yansongda/laravel-pay中拉起支付,是將支付form信息直接返回到頁(yè)面中,考慮到業(yè)務(wù)需求,需要通過json方式返回更方便一些
use Yansongda\Pay\Pay; /** * Class SecondPay * @package App * 支付寶手機(jī)網(wǎng)頁(yè)支付接口 */ class ZfbWapPay extends Model { //發(fā)送支付請(qǐng)求 public function send(Request $request,$outTradeNum,$payAmount) { $config = config('pay.alipay'); //取出配置信息,根據(jù)需求動(dòng)態(tài)改變 $config['return_url'] ='http://api.aiwangyouxi.com/web/pay/jump/'.$outTradeNum; $order = [ 'out_trade_no' => $outTradeNum, //我方訂單號(hào) 'total_amount' => $payAmount, //支付金額,單位(元) 'subject' => '游戲支付', ]; $alipay = Pay::alipay($config)->wap($order); return $alipay; //返回form表單信息 } }
成功返回form表單信息,將信息插入到頁(yè)面中完成拉起支付
$("body").append(data.form_text);
4、支付回調(diào)
use Yansongda\Pay\Pay; /** * Class WxwebController * @package App\Http\Controllers\Web * 支付寶h5支付回調(diào) */ class ZfbwebController extends Controller { private $pay_order; //我方訂單號(hào) private $call_order; //第三方訂單號(hào) public function notify(Request $request) { $pay_config = config('pay.alipay'); $alipay = Pay::alipay($pay_config); $this->pay_order = $request->out_trade_no; $this->call_order = $request->trade_no; $save_back = $m_pay_back->addback($this->pay_order,json_encode($request->all())); //將支付回調(diào)信息記錄到數(shù)據(jù)庫(kù)中 $check_result = $alipay->verify(); if(!$check_result) { //回調(diào)驗(yàn)簽失敗 return ''; } return $alipay->success(); } }
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。