您好,登錄后才能下訂單哦!
這篇文章主要介紹了Laravel5.5如何實現支付寶手機網站支付,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
1、安裝使用Laravel擴展庫yansongda/laravel-pay
yansongda/laravel-pay Github地址
通過composer進行安裝
$ composer require yansongda/laravel-pay
生成配置文件
$ php artisan vendor:publish --provider="Yansongda\\LaravelPay\\PayServiceProvider" --tag=laravel-pay
2、配置支付信息,填寫到配置文件pay.php中
運行支付寶提供的工具生成如下:
將公鑰文件里面的去除-----BEGIN PUBLIC KEY-----與-----END PUBLIC KEY-----,將剩下的內容合并為一行,添加到應用公鑰中
將私鑰文件里面的去除-----BEGIN RSA PRIVATE KEY-----與-----END RSA PRIVATE KEY-----,將剩下的內容合并為一行,需添加到配置文件中
配置文件中填寫對應內容
3、拉起支付
yansongda/laravel-pay中拉起支付,是將支付form信息直接返回到頁面中,考慮到業務需求,需要通過json方式返回更方便一些
use Yansongda\Pay\Pay; /** * Class SecondPay * @package App * 支付寶手機網頁支付接口 */ class ZfbWapPay extends Model { //發送支付請求 public function send(Request $request,$outTradeNum,$payAmount) { $config = config('pay.alipay'); //取出配置信息,根據需求動態改變 $config['return_url'] ='http://api.aiwangyouxi.com/web/pay/jump/'.$outTradeNum; $order = [ 'out_trade_no' => $outTradeNum, //我方訂單號 'total_amount' => $payAmount, //支付金額,單位(元) 'subject' => '游戲支付', ]; $alipay = Pay::alipay($config)->wap($order); return $alipay; //返回form表單信息 } }
成功返回form表單信息,將信息插入到頁面中完成拉起支付
$("body").append(data.form_text);
4、支付回調
use Yansongda\Pay\Pay; /** * Class WxwebController * @package App\Http\Controllers\Web * 支付寶h6支付回調 */ class ZfbwebController extends Controller { private $pay_order; //我方訂單號 private $call_order; //第三方訂單號 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())); //將支付回調信息記錄到數據庫中 $check_result = $alipay->verify(); if(!$check_result) { //回調驗簽失敗 return ''; } return $alipay->success(); } }
感謝你能夠認真閱讀完這篇文章,希望小編分享的“Laravel5.5如何實現支付寶手機網站支付”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。