zoukankan      html  css  js  c++  java
  • IOS-支付宝

     
    一、使用支付宝进行一个完整的支付功能,大致有以下步骤:
    与支付宝签约,获得商户ID(partner)和账号ID(seller)
    下载相应的公钥私钥文件(加密签名用)
    下载支付宝SDK
    生成订单信息
    调用支付宝客户端,由支付宝客户端跟支付宝安全服务器打交道
    支付完毕后返回支付结果给商户客户端和服务器
     
    注意:我们主要负责下单,和处理支付结果
     
     
    二、调用接口步骤

    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];

     
     
    代码:
     1 - (IBAction)buy {
     2     // 1.生成订单信息
     3     AlixPayOrder *order = [[AlixPayOrder alloc] init];
     4     order.partner = PartnerID; // 商户ID
     5     order.seller = SellerID; // 帐号ID
     6     
     7     order.tradeNO = @"2014082717183778587475"; // 订单ID(由商家自行制定)
     8     order.productName = self.deal.title; // 商品标题
     9     order.productDescription = self.deal.desc; // 商品描述
    10     order.amount = [NSString stringWithFormat:@"%.2f", [self.deal.current_price floatValue]]; //商品价格
    11     order.notifyURL =  @"http%3A%2F%2Fwwww.xxx.com"; // 回调URL
    12     
    13     // 2.签名加密
    14     id<DataSigner> signer = CreateRSADataSigner(PartnerPrivKey);
    15     NSString *signedString = [signer signString:[order description]];
    16     
    17     // 3.利用订单信息、签名信息、签名类型生成一个订单字符串
    18     NSString *orderString = [NSString stringWithFormat:@"%@&sign="%@"&sign_type="%@"",
    19                              [order description], signedString, @"RSA"];
    20     
    21     // 4.打开支付宝,传递订单信息
    22     [AlixLibService payOrder:orderString AndScheme:@"heituan" seletor:@selector(paymentResultDelegate:) target:self];
    23 }
     
  • 相关阅读:
    POJ 1659 Frogs' Neighborhood
    zoj 2913 Bus Pass(BFS)
    ZOJ 1008 Gnome Tetravex(DFS)
    POJ 1562 Oil Deposits (DFS)
    zoj 2165 Red and Black (DFs)poj 1979
    hdu 3954 Level up
    sgu 249 Matrix
    hdu 4417 Super Mario
    SPOJ (BNUOJ) LCM Sum
    hdu 2665 Kth number 划分树
  • 原文地址:https://www.cnblogs.com/oc-bowen/p/5341536.html
Copyright © 2011-2022 走看看