【第21期】观点:人工智能到底用 GPU?还是用 FPGA?

ios 支付宝支付流程

转载 2015年11月20日 21:07:48


  1. 步骤1:  启动IDE(如Xcode),把iOS包中的压缩文件中以下文件拷贝到项目文件夹下,

    并导入到项目工程中。

AlipaySDK.bundle   					
AlipaySDK.framework


  1. 步骤2:  在需要调用AlipaySDK的文件中,增加头文件引用。#import <AlipaySDK/AlipaySDK.h>


    步骤3: 配置请求信息。

          Order *order = [[Order alloc] init];
           order.partner = partner;//
合作身份者ID,以 2088 开头由 16 位纯数字组成的字符串。请参考“7.1 如何获得PID与 密钥”。
           order.seller = seller;//

支付宝收款账号,手机号码或邮箱格式。

private_key//商户方的私钥,pkcs8 格式

     order.tradeNO = [self generateTradeNO]; //订单ID(由商家□自□行制定)order.productName = product.subject; //商品标题  order.productDescription = product.body; //商品描述

order.amount = [NSString stringWithFormat:@"%.2f",product.price]; //商 品价格

 

order.notifyURL = @"http://www.xxx.com"; //回调URL order.service = @"mobile.securitypay.pay"; order.paymentType = @"1";
order.inputCharset = @"utf-8";

order.itBPay = @"30m";

//应用注册scheme,AlixPayDemo-Info.plist定义URL types NSString *appScheme = @"alisdkdemo";

//将商品信息拼接成字符串
NSString *orderSpec = [order description]; NSLog(@"orderSpec = %@",orderSpec);

//获取私钥并将商户信息签名,外部商户可以根据情况存放私钥和签名,只需要遵循 RSA 签名规范,并将签名字符串 base64 编码和 UrlEncode
id<DataSigner> signer = CreateRSADataSigner(privateKey);
NSString *signedString = [signer signString:orderSpec];

//将签名成功字符串格式化为订单字符串,请严格按照该格式NSString *orderString = nil;
if (signedString != nil) {

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

orderSpec, signedString, @"RSA"];

[[AlipaySDK defaultService] payOrder:orderString fromScheme:appScheme callback:^(NSDictionary *resultDic) {

          NSLog(@"reslut = %@",resultDic);

}];


步骤4: 配置支付宝客户端返回url处理方法。
如示例 
AliSDKDemo\APAppDelegate.m 文件中,

@implementation AppDelegate 中增加如下代码:

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {

//如果极简 SDK 不可用,会跳转支付宝钱包进行支付,需要将支付宝钱包的支付结果回传给 SDK if ([url.host isEqualToString:@"safepay"]) {

[[AlipaySDK defaultService] processOrderWithPaymentResult:url standbyCallback:^(NSDictionary *resultDic) {

          NSLog(@"result = %@",resultDic);
       }];

}

if ([url.host isEqualToString:@"platformapi"]){//支付宝钱包快登授权返回authCode

[[AlipaySDK defaultService] processAuthResult:url standbyCallback:^(NSDictionary *resultDic) {

          NSLog(@"result = %@",resultDic);
       }];

}

return YES; }

注意:

  1. 出于安全考虑,请商户尽量把私钥保 存在服务端,在服务端进行签名验签。

  2. 点击项目名称,点击“Info”选项卡,在“URL Types”选项中,点击“+”, 在“URL Schemes”中输入“alisdkdemo”。“alisdkdemo”来自于文件 “APViewController.m”的 NSString *appScheme = @"alisdkdemo";


  1. 步骤1:  启动IDE(如Xcode),把iOS包中的压缩文件中以下文件拷贝到项目文件夹下,

    并导入到项目工程中。

AlipaySDK.bundle   					
AlipaySDK.framework


  1. 步骤2:  在需要调用AlipaySDK的文件中,增加头文件引用。#import <AlipaySDK/AlipaySDK.h>


    步骤3: 配置请求信息。

          Order *order = [[Order alloc] init];
           order.partner = partner;//
合作身份者ID,以 2088 开头由 16 位纯数字组成的字符串。请参考“7.1 如何获得PID与 密钥”。
           order.seller = seller;//

支付宝收款账号,手机号码或邮箱格式。

private_key//商户方的私钥,pkcs8 格式

     order.tradeNO = [self generateTradeNO]; //订单ID(由商家□自□行制定)order.productName = product.subject; //商品标题  order.productDescription = product.body; //商品描述

order.amount = [NSString stringWithFormat:@"%.2f",product.price]; //商 品价格

 

order.notifyURL = @"http://www.xxx.com"; //回调URL order.service = @"mobile.securitypay.pay"; order.paymentType = @"1";
order.inputCharset = @"utf-8";

order.itBPay = @"30m";

//应用注册scheme,AlixPayDemo-Info.plist定义URL types NSString *appScheme = @"alisdkdemo";

//将商品信息拼接成字符串
NSString *orderSpec = [order description]; NSLog(@"orderSpec = %@",orderSpec);

//获取私钥并将商户信息签名,外部商户可以根据情况存放私钥和签名,只需要遵循 RSA 签名规范,并将签名字符串 base64 编码和 UrlEncode
id<DataSigner> signer = CreateRSADataSigner(privateKey);
NSString *signedString = [signer signString:orderSpec];

//将签名成功字符串格式化为订单字符串,请严格按照该格式NSString *orderString = nil;
if (signedString != nil) {

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

orderSpec, signedString, @"RSA"];

[[AlipaySDK defaultService] payOrder:orderString fromScheme:appScheme callback:^(NSDictionary *resultDic) {

          NSLog(@"reslut = %@",resultDic);

}];


步骤4: 配置支付宝客户端返回url处理方法。
如示例 
AliSDKDemo\APAppDelegate.m 文件中,

@implementation AppDelegate 中增加如下代码:

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {

//如果极简 SDK 不可用,会跳转支付宝钱包进行支付,需要将支付宝钱包的支付结果回传给 SDK if ([url.host isEqualToString:@"safepay"]) {

[[AlipaySDK defaultService] processOrderWithPaymentResult:url standbyCallback:^(NSDictionary *resultDic) {

          NSLog(@"result = %@",resultDic);
       }];

}

if ([url.host isEqualToString:@"platformapi"]){//支付宝钱包快登授权返回authCode

[[AlipaySDK defaultService] processAuthResult:url standbyCallback:^(NSDictionary *resultDic) {

          NSLog(@"result = %@",resultDic);
       }];

}

return YES; }

注意:

  1. 出于安全考虑,请商户尽量把私钥保 存在服务端,在服务端进行签名验签。

  2. 点击项目名称,点击“Info”选项卡,在“URL Types”选项中,点击“+”, 在“URL Schemes”中输入“alisdkdemo”。“alisdkdemo”来自于文件 “APViewController.m”的 NSString *appScheme = @"alisdkdemo";

举报

相关文章推荐

接入支付宝支付功能思路总结

前段时间项目中使用到了支付宝的支付功能,这几天偶然一测试,发现居然无法支付了!费了半天劲,总算把问题解决了,但是在解决问题的过程中,花费了大量时间在回顾以 前的代码和重新理解支付宝逻辑中,因此决定在此...

Android 支付宝支付详解与demo

先给出可用demo吧 支付宝可用demo下载地址 前段时间公司项目需要集成支付宝支付,蚂蚁金服的文档和demo可以说是非常清晰的,经过一些时间的摸索,也是把支付宝支付集成到了项目中。不可缺...

支付宝支付流程图解

支付涉及的3个重要数据:订单数据;用户账号,密码数据;电商服务器的支付宝账号 支付宝支付和微信支付区别:   支付流程:商户服务器需要将订单信息通过统一下单api到微信服务器请求预支付交易单 ...

支付宝手机网站支付接口集成的经验小结

1.申请企业账号:我们需要一个企业账号; 2.产品功能签约:支付宝开放平台提供了各种功能的API,找到我们需要的API,查看文档(手机网站支付产品介绍https://b.alipay.com/ord...

支付宝支付sdk解析

在调用支付宝前需要初始化config参数,在文件中输出需要的appid,秘钥,公钥等信息。。。。 Configs.init("zfbinfo.properties");在初始化之后进行工厂模式进行...

实现支付宝支付从底部弹窗效果

前言我们再用支付宝支付的时候,会从底部弹上来一个对话框,让我们选择支付方式等等,今天我们就来慢慢实现这个功能效果图实现主界面很简单,就是一个按钮,点击后跳到支付详情的Fragment中package ...

在线支付开发流程总结<包括客户端与服务端>

原文地址:http://www.douban.com/note/223773046/?start=0&post=ok#last 经过这段时间对支付宝在线支付接口、手机在线支付接口、农业银行在线支付接口...

苹果IOS开发者账号如何续费-Appstore

转自:http://blog.sina.com.cn/s/blog_8a0506320102w1ex.html  现在越来越多的开发者加入IOS系统开发,不管为名为利,都有一颗隐藏的积极向上拼搏的心...

[iOS]应用内支付(内购)的个人开发过程及坑!

本文会给大家详细介绍iOS内购,这是本人16年5月底的开发过程,希望对看完此篇文章的人有所帮助。 本文基于XcodeVersion 7.3 (7D175)版本,手机是iPhone 6,9.3系统。 ...

IOS开发者账号如何续费-Appstore

这个网上的教材很少,下面我就给大家演示一下。       1.打开苹果开发者会员中心,进行登陆。 2.选择续费项目。 3.确定支付信息。 4.点击立刻购买。 5.输入开发者账号密码 ...
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)