本文讲解  uni-app如何调用支付宝进行支付,服务端为 .net编写。

客户端:uni-app 编写  1、根据服务端生成的订单信息发起支付。

服务端:.net 编写 1、生成订单信息。2、接收支付宝异步反馈支付信息。

先说重点  uni-app 不支持支付宝沙箱测试!不支持支付宝沙箱测试!!不支持支付宝沙箱测试!!!(重要的事情说三遍,为此我浪费了半天。上线应用没签约支付又浪费了半天)。

客户端很简单 一句代码搞定:  参考官方文档:https://uniapp.dcloud.io/api/plugins/payment?id=requestpayment (5+App 支付)

AliPay: function() {
uni.requestPayment({
provider: 'alipay',
orderInfo:'服务端生成的支付订单信息',
success: function(res) {
console.log('success:' + JSON.stringify(res));
},
fail: function(err) {
console.log('fail:' + JSON.stringify(err));
}
});
},

服务端编写代码之前,需要去支付宝进行app应用创建。详细流程:https://docs.open.alipay.com/204/105297/

注 :创建后的应用是不能用于真实环境测试的,必须申请应用上线(审核比较容易)。并且签约支付功能,签约!签约!!签约!!!(没签约的可以用沙箱环境测试生成的订单信息)

三个密钥: 商户应用私钥(自己保存生成订单用)、商户应用公钥(上传到支付宝应用,用来生成支付宝公钥)、支付宝公钥(根据商户应用公钥自动生成,生成订单用到)。

创建应用后

  1、设置密钥 工具下载地址:https://docs.open.alipay.com/291/105971  私钥保存到本地,公钥填写到支付宝应用,得到支付宝公钥。

从上面的图 我们可以知道,我们只需要的两个东西:1、APPID、2、支付宝公钥(根据用户上传的公钥自动生成)(网关是固定的,真实环境:https://openapi.alipay.com/gateway.do。沙箱环境:https://openapi.alipaydev.com/gateway.do。 有区别!)。

做完上面,我们就可以下载对应的SDK了。下载地址:https://docs.open.alipay.com/54/106370/。 上面有详细的使用说明。多看几遍。

我用的是 .net,我新建了一个WebService项目,把上面的SDK 应用到项目就好了。

代码:

private string RSA2 = "RSA2";
private string CHARSET = "utf-8"; private string URL = "https://openapi.alipaydev.com/gateway.do"; // 这个是沙箱环境的网关,真实环境需要改一下
private string APPID = "";
private string APP_PRIVATE_KEY = "私钥字符串拷过来";
private string ALIPAY_PUBLIC_KEY = "z支付宝公钥拷贝过来"; [WebMethod(Description = "获取订单信息")]
public string getAliPayOrderInfo()
{
IAopClient client = new DefaultAopClient(URL, APPID, APP_PRIVATE_KEY, "json", "1.0", RSA2, ALIPAY_PUBLIC_KEY, CHARSET, false); AlipayTradeAppPayModel model = new AlipayTradeAppPayModel(); model.Body = "我是测试数据";
model.Subject = "App支付测试DoNet";
model.TotalAmount = "0.01";
model.ProductCode = "QUICK_MSECURITY_PAY";
model.OutTradeNo = "20170216555555555555555501";
model.TimeoutExpress = "30m"; AlipayTradeAppPayRequest request = new AlipayTradeAppPayRequest();
request.SetBizModel(model); AlipayTradeAppPayResponse response = client.SdkExecute(request);
return response.Body; }

运行结果如下图,直接拷贝到客户端的代码里就可以了。

正式上线的App 并且已经签约了支付功能,可以运行。如果是沙箱环境,则会报错  “[payment支付宝:62009]未知错误”。

支付宝提供了调试工具用来验证上面的订单信息。工具下载地址:https://openclub.alipay.com/read.php?tid=7695

选择沙箱环境,把上面生成的订单信息考本到文本框,点击“点我去支付”,可以唤起支付页面而不报错,就说明在服务端的请求参数没有问题。

uni-app 调用支付宝支付的更多相关文章

  1. app调用支付宝支付 笔记

    1.提交各种申请 2.通过后进入支付宝开放平台  --> 管理中心 -->创建应用  --> 填写相关信息 提交等待审核通过(1,2天)   3.下载集成包(https://doc. ...

  2. 【原创分享·支付宝支付】HBuilder打包APP调用支付宝客户端支付

    前言 最近有点空余时间,所以,就研究了一下APP支付.前面很早就搞完APP的微信支付了,但是由于时间上和应用上的情况,支付宝一直没空去研究.然后等我空了的时候,发现支付宝居然升级了支付逻辑,虽然目前还 ...

  3. iOS app集成支付宝支付流程及后台php订单签名处理

    iOS app集成支付宝支付流程 1: 开通支付宝商户 由公司去支付宝 https://b.alipay.com/order/serviceIndex.htm 签约支付宝开通支付宝商家: 2:商户支付 ...

  4. python调用支付宝支付接口

    python调用支付宝支付接口详细示例—附带Django demo代码   项目演示: 一.输入金额 二.跳转到支付宝付款 三.支付成功 四.跳转回自己网站 在使用支付宝接口的前期准备: 1.支付宝公 ...

  5. PHP实现app唤起支付宝支付代码

    本文主要和大家分享PHP实现app唤起支付宝支付代码,希望能帮助到大家. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 ...

  6. web页面调用支付宝支付

    web页面调用支付宝支付 此文章是前端单独模拟完成支付,若在线上环境则需要后台配合产生签名等参数 在蚂蚁金服开放平台申请沙箱环境 将沙箱环境中的密钥.应用网关.回调地址补全,生成密钥的方法在此 配置好 ...

  7. android app 集成 支付宝支付 微信支付

    项目中部分功能点需要用到支付功能,移动端主要集成支付宝支付和微信支付 支付宝sdk以及demo下载地址:https://doc.open.alipay.com/doc2/detail.htm?spm= ...

  8. PHP APP端支付宝支付

    应业务需求,做了支付宝支付和微信支付,今天分享一下手机端app支付宝支付对接流程,实际开发过程是前后端分离,前端调用后端API接口,实现功能返回数据,我所用的跨挤啊为TP5,大致可以分为四步: 1.在 ...

  9. app微信支付宝支付后台的插件模式+回调通过spring广播处理后续业务(已亲测可用)

    写在前面的话:每当我们做一个项目,基本上都会涉及到支付的业务,最常用的莫过于微信和支付宝的支付了,项目有bug,有问题,都不叫问题,可一旦钱出了问题,那就是大问题了,所以在支付业务上我们必须慎之又慎! ...

随机推荐

  1. oracle控制文件问题

    下午时连接数据库突然发现连不上了,监听报错找不到服务,于是登录数据库所在服务器,查看监听状态,oracle:lsnrctl status 监听状态正常,登入数据库查看[oracle@frkdb1 ~] ...

  2. Oracle数据库 基础SQL语句练习

    一.说明 第一次使用Oracle,想做一些练习,熟悉一些oracle. 表:使用的是scott用户,默认的表 具体表讲解,可以参考该文档:https://www.cnblogs.com/xjcheng ...

  3. LVS-DR模式 SOP

    LVS DR SOP 1.1虚拟机地址信息LVS-DR模式DR1:172.31.0.29 DR2:172.31.0.28 RS1:172.31.0.25 RS2:172.31.0.26 lvs-cli ...

  4. edgedb 集成timescaledb

    timescaledb 是一个强大的pg 扩展,可以让我们的pg 数据库支持时序数据库的能力,以下测试下与edgedb 集成 预备 因为edgedb 当前是基于pg11 开发的,所以需要使用pg11 ...

  5. NFPA, UL

    Who or what is NFPA? NFPA (National Fire Protection Association) is an organization in the USA that ...

  6. Beginning Math and Physics For Game Programmers (Wendy Stahler 著)

    Chapter 1. Points and Lines (已看) Chapter 2. Geometry Snippets (已看) Chapter 3. Trigonometry Snippets  ...

  7. 利用类的反射导入excel示例

    直接上代码 1.页面展示 <div class="panel-heading font-bold text-center"> <i class="fa ...

  8. Java 内部类的作用

    1.内部类可以很好的实现隐藏 一般的非内部类,是不允许有 private 与protected权限的,但内部类可以 2.内部类拥有外围类的所有元素的访问权限 3.可是实现多重继承 4.可以避免修改接口 ...

  9. 深入理解CSS选择器优先级

    题外话 今天把 <CSS REFACTORING>(中文名叫<CSS重构:样式表性能调优>)电子书粗略的浏览了一遍,这本书很薄,150页左右,首先是介绍了什么是重构并举了两个简 ...

  10. 转:嵌入式: jffs2,yaffs2,logfs,ubifs文件系统性能分析

    原文地址: http://blog.chinaunix.net/uid-23381466-id-3411483.html. 在嵌入式领域,FLASH是一种常用的存储介质,由于其特殊的硬件结构,所以普通 ...