laravel支付宝sdk接入
生活随笔
收集整理的這篇文章主要介紹了
laravel支付宝sdk接入
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
自己學習使的 僅供參考
一、打開螞蟻金服開放平臺 找到研發服務->沙箱應用
設置沙箱應用保證可以使用
二、找到sdkdemo下載放到本地環境并改名為alipay配置里面的config 注釋有詳細的講解仔細看
三、(這里是我的習慣)放到laravel的app下
四、去config下面新建一個alipay.php將本地修改好的config放到中間
五、復制alipay/pagepay里面的pagepay.php代碼到自己的支付方法里面需要修改(發生錯誤的順序沒分先后)
1、出現一個AopCline的一個each的錯誤(這個一般是laravel5.以上才會發生)
修改為
2.出現一個encrypt或者decrypt沖突的錯誤(因為laravel自帶encrypt和decrypt方法)修改alipay/aop/AopEncrypt.php的方法名即可 如:
3.會出現一個AlipayTradePagePayContentBuilder()錯誤 找到這個位置前面加個\
到這里基本就結束了 附上自己測試代碼
//支付方法public function pay($order_id){require_once app_path("Packages/alipay/pagepay/service/AlipayTradeService.php");require_once app_path("Packages/alipay/pagepay/buildermodel/AlipayTradePagePayContentBuilder.php");$config = config("alipay");//商戶訂單號,商戶網站訂單系統中唯一訂單號,必填$out_trade_no = date('YmdHis').rand(50,200).Str::random(10);//訂單名稱,必填$subject = trim("go團隊測試");//付款金額,必填$total_amount = rand(10,100);//商品描述,可空$body = "";//構造參數$payRequestBuilder = new \AlipayTradePagePayContentBuilder();$payRequestBuilder->setBody($body);$payRequestBuilder->setSubject($subject);$payRequestBuilder->setTotalAmount($total_amount);$payRequestBuilder->setOutTradeNo($out_trade_no);$aop = new \AlipayTradeService($config);/*** pagePay 電腦網站支付請求* @param $builder 業務參數,使用buildmodel中的對象生成。* @param $return_url 同步跳轉地址,公網可以訪問* @param $notify_url 異步通知地址,公網可以訪問* @return $response 支付寶返回的信息*/$response = $aop->pagePay($payRequestBuilder,$config['return_url'],$config['notify_url']);//輸出表單var_dump($response);}4、同步跳轉
//同步跳轉public function success(){//引入配置文件$config = config('alipay');//引入ALipayTradeService文件require_once app_path("Packages/alipay/pagepay/service/AlipayTradeService.php");//接到支付寶同步跳轉所返回的所有值 都將驗簽使用$arr = $_GET;//實例化AlipayTradeService 前面加個\ 傳配置文件過去$alipaySevice = new \AlipayTradeService($config);//調用驗簽方法 這里特別說明一下 如果驗簽失敗。請去AlipayTradeService文件中找到check方法做一下修改$ischeck = $alipaySevice->check($arr);//判斷驗簽是否成功if($ischeck){//成功跳轉到訂單成功頁面 用于提示用戶return view("order.success");}else{//驗簽失敗echo "fail";}}總結
以上是生活随笔為你收集整理的laravel支付宝sdk接入的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IDEA中Spring Boot项目报错
- 下一篇: hadoop 2.6.5 + hive