项目中要用到支付功能,现在来看支付宝、微信应该是必选的两个方式了。

uni-app 文档中要求:APP端 微信 和 支付宝的 orderInfo 必须是 字符串。

调用支付宝时,支付宝直接返回的 orderInfo 就是拼接好的字符串,拿来用即可。很顺利的完成调起,支付。

调用微信遇到了问题。

微信返回的是加密后的 签名,也就是 sign 这个字段。整体的 orderInfo 字符串是 需要后台自己来拼接的。

1、是拼接的类似 支付宝的 字符串行不通,貌似是 uni-app 微信时 不支持这种格式。

2、然后拼成了 json 通过 JSON.stringify() 这个方法来转换成字符串。可以成功。后来看到官方  安卓微信支付-100(-1)错误排除指导

看到这样一句

  1. '{"appid":"wx0411fa6a39d61297","noncestr":"71maVjWiEAvU85Wk","package":"Sign=WXPay","partnerid":"1230636401","prepayid":"wx03141004900988e2c281e3170042244847","timestamp":1535955004,"sign":"2AE06EF08E54B47659C79149CD9C284C"}'

然后就在想是不是需要 再加个 单引号 ??事实上是不需要的。

3、后台 返回来的是这样的

"data": "{\"appid\":\"wxd666666666666\",\"noncestr\":\"7yS9jZFgTq5ej6XH\",\"package\":\"Sign=WXPay\",\"partnerid\":\"22222222\",\"prepayid\":\"wx66666666666666666666666\",\"sign\":\"222222222FFFFFFFFAAAA\",\"timestamp\":\"1562838993\"}"

直接拿 data 作为orderInfo 就可以了。

还有一个问题 重要重要重要重要重要重要

在 微信平台创建应用的时候 有一项填写 安卓 应用包名和签名,如下图:

能在官方找的一定要在官方找。这是 填写平台信息的 客户让我看的 例子,那个应用签名 不应该是这个 MD5,

而应该是一个加密后的 32 位字符串。

去官方 下载 一个 签名获取工具

或者 官方安卓资源下载 最下面有工具下载。

每过一个坑,都会涨点儿记性。

这次的就是 多看官方文档 多看官方文档 多看官方文档 多看官方文档 多看官方文档 多看官方文档 多看官方文档

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

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

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

  2. App对接支付宝移动支付功能

    前段时间看了下app对接支付宝移动支付的功能,并自己总结了下支付宝移动支付的实现流程 一.申请流程          前提是已有现成的应用. 1.  申请地址            https://b ...

  3. iOS开发集成支付宝支付、支付宝&微信支付

    支付宝支付: 参考链接:https://www.jianshu.com/p/60175e525c0e https://blog.csdn.net/zhonggaorong/article/detail ...

  4. ThinkPHP 5 整合支付宝微信支付(支付宝H5,微信H5、APP支付、公众号支付)

    因项目没有PC站所以没有写电脑网站支付. Pay.php支付控制器 <?php // +----------------------------------------------------- ...

  5. easyswoole对接支付宝,微信支付

    在easyswoole中,已经开发好了相关的支付组件,只需要引入即可: composer require easyswoole/pay pay组件支持协程 支付宝 支付方法 支付宝支付目前支持 7 种 ...

  6. Android 支付宝/微信支付结果判断

    微信支付结果码 private static final int PAY_OK = 0; //交易成功 private static final int PAY_ERR = -1; //交易失败 pr ...

  7. 微信支付报错:app没有获取微信支付权限

    调试微信支付的时候报错: Array( [return_code] => FAIL [return_msg] => 您没有APP支付权限) 查询了,发现自己将之前的公众号支付的APPID一 ...

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

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

  9. uni-app 调用支付宝支付

    本文讲解  uni-app如何调用支付宝进行支付,服务端为 .net编写. 客户端:uni-app 编写  1.根据服务端生成的订单信息发起支付. 服务端:.net 编写 1.生成订单信息.2.接收支 ...

  10. iOS三方支付--微信支付/支付宝支付

    一.微信支付 1.注册账号并申请app支付功能 公司需要到微信开放品台进行申请app支付功能 , 获得appid和微信支付商户号(mch_id)和API秘钥(key) . Appsecret(secr ...

随机推荐

  1. select下拉框option的样式修改

    select原样式: 进行样式修改后的样式: 附上修改代码: //select外面必须包裹一个div,用来覆盖select原有的样式<div class="option"&g ...

  2. tensorflow之tf.squeeze()

    tf.squeeze()函数的作用是从tensor中删除所有大小(szie)是1的维度. 给定丈量输入, 此操作返回的是相同类型的张量, 并删除所有尺寸为1的维度.如果不想删除所有尺寸为1的维度, 可 ...

  3. JAVA 统计字符串中中文,英文,数字,空格,特殊字符的个数

    引言 可以根据各种字符在Unicode字符编码表中的区间来进行判断,如数字为'0'~'9'之间,英文字母为'a'~'z'或'A'~'Z'等,Java判断一个字符串是否有中文是利用Unicode编码来判 ...

  4. Element-ui 下拉列表 全选 多选时 select全选 新增一个选择所有的选项

    项目里经常会用到,在一个多选下拉框里新增一个选择所有的选项,例如: <!DOCTYPE html> <html lang="en"> <head> ...

  5. Java代理类Proxy的用法

    代理(proxy) 利用代理可以在运行时创建一个实现了一组给定接口的新类.这种功能只有在编译时无法确定需要实现哪个接口时才有必要使用. 何时使用代理 假设有一个表示接口的Class对象(有可能只包含一 ...

  6. AngleSharp 实战(05)之遍历内部子元素(x)元素,尝试着获取元素的 Attr 和 InnerText

    直接贴代码了: using System; using System.Linq; using System.Threading.Tasks; using AngleSharp; using Angle ...

  7. 基于 K8s 做应用发布的工具那么多, 阿里为啥选择灰姑娘般的 Tekton ?

    作者 | 邓洪超,阿里云容器平台工程师, Kubernetes Operator 第二人,云原生应用标准交付与管理领域知名技术专家   导读:近年来,越来越多专门给 Kubernetes 做应用发布的 ...

  8. DevExpress的TreeList怎样设置数据源,从实例入手

    场景 Winform控件-DevExpress18下载安装注册以及在VS中使用: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1 ...

  9. Winform中设置ZedGraph鼠标焦点位置画出十字线并在鼠标移出时十字线消失

    场景 Winforn中设置ZedGraph曲线图的属性.坐标轴属性.刻度属性: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...

  10. Docker 容器命令大全

    容器命令: 命令 描述 attach 将本地标准输入,输出和错误流转到到正在运行的容器 build 从Dockerfile构建映像 commit 根据容器的更改创建新镜像 cp 在容器和本地文件系统之 ...