支付宝移动支付开发错误集锦
来源:互联网 发布:云播软件 编辑:程序博客网 时间:2024/06/02 18:07
最近在做支付宝移动支付开发,在调起支付时总是报各种错,先后收到错误码ALI164,ALI38173等错误编码,其实当收到这些错误时多数是因为传入的参数和签名校验不正确。在开发时要注意以下几点:
1、用于签名的参数尽量不要用字符串拼接的方式,通过Map来存储,然后调用支付宝DEMO里提供的方法 AlipayCore.paraFilter(params)来进行排序过滤,然后使用AlipayCore.createLinkString(sParaNew)方法进行拼接例如:
Map<String, String> params =new HashMap<String, String>();
params.put("partner","\""+AlipayConfig.partner+"\"");
params.put("out_trade_no","\""+superOrderCode+"\"");
……以下参数省略
Map<String, String> sParaNew = AlipayCore.paraFilter(params);
//获取待签名字符串
String preSignStr = AlipayCore.createLinkString(sParaNew);
2、参数里的值是需要带引号,例如:
params.put("partner","\""+AlipayConfig.partner+"\""); 这里通过转义字符将引号写入。
3、参数中的所有值除了生成的sign需要做URLEncoder.encode编码,其余的值都不需做此编码,常常看见有人把里面存在的URL使用此编码处理,比如回调地址,在支付宝中这样是不可以的,但是最后生成的sign一定要做此编码。
4、发送的参数的顺序与用于签名的参数顺序必须一样。
5、sign和sign_type两个参数不用于签名计算,有好多人经常会把sign_type也用于签名计算。
6、如果上述都准确无误,请核对公钥生成的是否正确。
- 支付宝移动支付开发错误集锦
- 支付宝移动支付开发
- 移动开发支付宝
- Android开发 接入支付宝移动支付
- 支付宝-移动支付
- 支付宝移动支付
- Java支付宝支付集锦
- 移动支付之支付宝支付
- 支付宝移动快捷支付
- 支付宝移动支付集成
- 移动支付-支付宝篇
- 支付宝移动支付方案
- 支付宝移动支付集成
- 支付宝移动支付服务器端
- 移动支付之支付宝
- 移动开发之支付宝和银联支付区别
- C#支付宝移动支付开发详细教程
- (移动开发)支付宝支付配置流程
- 用户界面框架jQuery EasyUI示例大全之Tree
- jQuery动态添加.active属性实现按钮点击样式
- 【人脸检测】“人脸训练代码”项目笔记(3)——代码结构分析
- 前端的小玩意(7)——自动给每个字下方加着重号
- 区别:Thread.currentThread().getContextClassLoader() and Class.getClassLoader()
- 支付宝移动支付开发错误集锦
- AcEdJig类
- DexHunter学习笔记记录
- hdu 5773 The All-purpose Zero(Multi J,给你n个数(n<=1e5),每个数小于等于1000000,其中数为0的那些数可以变成其他任意的数,问变化之后的最长上升子序)
- 欢迎使用CSDN-markdown编辑器
- Android Studio使用NDK编译自己的.so库
- 欢迎使用CSDN-markdown编辑器
- iOS开发- 常见日志打印
- 操作系统——进程管理