zoukankan      html  css  js  c++  java
  • 支付宝流程、集成支付功能及部分代码

    1.支付宝

    a.什么是支付宝

    •    第三方支付平台
    • 简单来说,就是可以协调客户、商户、银行三者关系的方便平台

    b.集成支付宝

    •   现在不少app内都集成了支付宝功能
    • 使用支付宝进行一个完整的支付功能,大致有以下步骤:
    • 与支付宝签约,获得商户ID(partner)和账号ID(seller)
    • 下载相应的公钥私钥文件(加密签名用)
    • 下载支付宝SDK
    • 生成订单信息
    • 调用支付宝客户端,由支付宝客户端跟支付宝安全服务器打交道
    • 支付完毕后返回支付结果给商户客户端和服务器

     

    2.SDK下载

    a.下载sdk

     

    b.SDK目录结构

    c. SDK的作用

    • 里面提供了非常详细的文档,内容如下:
    • 如何签约
    • 如何获得公钥私钥
    • 如何调用支付接口

    3. 支付流程

    1.1支付流程.

    完整的支付服务业务流程和支付数据流程图,可以参考android文档

    1.2支付流程安全支付服务业务流程

     

    1.3调用安全支付数据流程

     

    4.集成支付功能

    1.1Demo集成支付功能的具体操作方式,可以参考Demo

     

    1.2 Demo的常见问题

    • 当第一次打开Demo时,可能会出现以下问题:

     

    • 错误原因很简单,就是项目的部署版本设置太低了,从3.0改为4.3即可

     

    1.3依赖的库文件

    • 要想集成支付功能,依赖以下文件夹的库文件(把这3个添加到你的客户端中)

     

    1.4如何调用支付接口

    • 调用支付接口可以参考AlixPayDemoViewController的下面方法

    -       (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

    如何创建订单、如何签名、如何调用支付接口,都在这个方法里面了

    1.5接口调用步骤

    1.封装订单模型

    AlixPayOrder *order = [[AlixPayOrder alloc] init];

    // 生成订单描述

    NSString *orderSpec = [order description];

    2.签名

    id<DataSigner> signer = CreateRSADataSigner(@“私钥key”);

    // 传入订单描述 进行 签名

    NSString *signedString = [signer signString:orderSpec];

    3.生成订单字符串

    NSString *orderString = [NSString stringWithFormat:@"%@&sign="%@"&sign_type="%@"",

                             orderSpec, signedString, @"RSA"];

    4.调用支付接口

    AlixPay * alixpay = [AlixPay shared];

    // appScheme:商户自己的协议头

    int ret = [alixpay pay:orderString applicationScheme:appScheme];

  • 相关阅读:
    关于MyEclipse项目的名字的修改对项目导入导出的影响
    关于SQL语句的一些注意事项
    关于Struts2的jsp页面的注释
    关于VS2013常用到的快捷键
    关于Cocos2d-x中定时器的使用总结
    关于Cocos2d-x中打包图集和使用方法
    zend studio 10.6.2 设置默认编码为UTF-8
    zend studio 10.6.2 字体大小 设置
    zend Studio10.6.2汉化
    JQ Ajax 上传文件
  • 原文地址:https://www.cnblogs.com/changxs/p/3516659.html
Copyright © 2011-2022 走看看