Laravel5.5 支付宝手机网站支付的教程

Laravel5.5 支付宝手机网站支付的教程

https://segmentfault.com/a/1190000015559571

这篇文章主要介绍了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中

Laravel5.5 支付宝手机网站支付的教程

运行支付宝提供的工具生成如下:

Laravel5.5 支付宝手机网站支付的教程

将公钥文件里面的去除—–BEGIN PUBLIC KEY—–与—–END PUBLIC KEY—–,将剩下的内容合并为一行,添加到应用公钥中

将私钥文件里面的去除—–BEGIN RSA PRIVATE KEY—–与—–END RSA PRIVATE KEY—–,将剩下的内容合并为一行,需添加到配置文件中

配置文件中填写对应内容

Laravel5.5 支付宝手机网站支付的教程

3、拉起支付

yansongda/laravel-pay中拉起支付,是将支付form信息直接返回到页面中,考虑到业务需求,需要通过json方式返回更方便一些

Laravel5.5 支付宝手机网站支付的教程

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
 * 支付宝h5支付回调
 */
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();
 }
}

 

   

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

 

原文链接:https://segmentfault.com/a/1190000015559571

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/113099.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 数据结构图的构建_逻辑结构图的数据结构表示

    数据结构图的构建_逻辑结构图的数据结构表示图是一种很重要的数据结构,不解释。

    2022年4月19日
    65
  • 长尾分布数据_厚尾分布

    长尾分布数据_厚尾分布长尾分布数据11.什么是长尾分布数据长尾分布数据是一种偏态分布,是指几个类别(亦叫头类)包含大量的样本,而大多数类别(亦叫尾类)只有非常少量的样本。类似这样的数据集会使得深度学习网络在头部类中表现良好,在尾部类中效率不高,整体的识别精度显著下降。2.解决办法大多数研究者通过不平衡学习策略来解决长尾识别问题,主要分为两类:数据级方法和算法级方法。数据级方法数据水平的策略包括尾部类过采样,头部类欠采样,以及其他新的抽样方法。所以解决手段主要着力于如何对数据进行抽样。这种方法存在的问题是,过采

    2025年8月8日
    3
  • java修改session默认过期时间「建议收藏」

    java修改session默认过期时间「建议收藏」java修改session默认过期时间    程序中session都有一个默认的过期时间,其中tomcat中的默认时间为30分钟,根据需要我们可以去手动设置session的过期时间,以下是设置session的过期时间的三个方法:  1.在tomcat–>conf–>conf/web.xm中的中设置:       30  

    2022年7月16日
    73
  • intellij设置经典样式(背景为黑色的经典样式Darcula)

    intellij设置经典样式(背景为黑色的经典样式Darcula)将intellij设置为经典样式,背景黑色的Darcula样式。

    2022年6月27日
    28
  • Windows编程(网络编程)

    Windows编程(网络编程)套接字类型与协议设置SOCK_STREAM[流套接字]TCP面向连接、可靠的数据传输适合传输大量的数据,不支持广播、多播SOCK_DGRAM[数据包套接字]

    2021年12月13日
    39
  • 手机软件测试的简单认识方法_什么都不会去做软件测试

    手机软件测试的简单认识方法_什么都不会去做软件测试接触手机软件测试也有三四个月了,讲讲自己目前的想法。仅仅是一点小认识,很多还不够成熟,不够全面,欢迎各位指正交流。废话不多说了,请戳下刚开始当然就是根据已有的测试用例来执行,接触较好后就觉得

    2025年9月19日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号