关于ios支付(阿里,微信)
来源:互联网 发布:lol有mac国服版本吗 编辑:程序博客网 时间:2024/06/05 20:12
1,阿里支付
阿里支付的文档写的很清楚,对于一些参数应该没有问题
关注的应该是有无客户端走的回调方法
装了客户端回调
AppDelegate
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
if ([url.hostisEqualToString:@"safepay"]) {
[[AlipaySDKdefaultService]
processOrderWithPaymentResult:url
standbyCallback:^(NSDictionary *resultDic) {
NSString * query = [[urlquery] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
AlixPayResult *result = [[AlixPayResultalloc] initWithString:query];
if (result.statusCode ==9000) {
id<DataVerifier> verifier =CreateRSADataVerifier([RPDataSharesharedService].publicKey);
if ([verifier verifyString:result.resultStringwithSign:result.signString]){
//交易成功
}else {
//交易失败
}
}elseif (result.statusCode ==4000){
//订单已支付
}elseif (result.statusCode ==6001){
//取消支付
}
}];
}elseif ([url.hostisEqualToString:@"pay"]) {
return [WXApihandleOpenURL:url delegate:self];
}
}
web端支付
+(void)initAlixPayOrder:(AliPayModel *)aliPayObj
{
[RPDataShare sharedService].publicKey = aliPayObj.publicKey;
[RPDataShare sharedService].privateKey = aliPayObj.privateKey;
aliPayObj.notifyURL =@"";
aliPayObj.service =@"";
aliPayObj.paymentType =@"";
aliPayObj.inputCharset =@"";
aliPayObj.itBPay =@"";
aliPayObj.showUrl =@"";
NSString *appScheme = @"";
NSString *orderSpec = [aliPayObj description];
id<DataSigner> signer =CreateRSADataSigner(aliPayObj.privateKey);
NSString *signedString = [signer signString:orderSpec];
NSString *orderString = nil;
if (signedString != nil)
{
orderString = [NSStringstringWithFormat:@"%@&sign=\"%@\"&sign_type=\"%@\"",
orderSpec, signedString,@"RSA"];
[[AlipaySDKdefaultService] payOrder:orderStringfromScheme:appScheme callback:^(NSDictionary *resultDic) {
DLog(@"reslut = %@",resultDic);
if ([[resultDic objectForKey:@"resultStatus"]integerValue]==6001) {
//取消付款
}elseif ([[resultDic objectForKey:@"resultStatus"]integerValue]==9000){
//交易成功
}
}elseif ([[resultDic objectForKey:@"resultStatus"]integerValue] ==4000){
//订单已支付
}
}];
}
}
2,微信支付
申请开通微信支付后财付通会把一些参数以邮件形式发给你:商户号(PartnerID)、初始密钥(PartnerKey),同时会提醒你去财付通企业版修改32位的密钥,修改后对应的PartnerKey也要修改,微信的支付密钥要自己发邮件去申请,反正我们是这么弄来的
接下来就是生成package和签名,生成package注意access token的时长和次数限制
签名微信分app签名和后台签名,拿到签名生成调微信接口生成预支付订单id
拿预支付订单id调微信支付
微信注意的就是刚开的几个参数要邮件去拿
- 关于ios支付(阿里,微信)
- iOS-关于微信支付
- [iOS]关于微信支付
- 关于微信支付ios的问题
- iOS微信支付
- IOS:微信支付
- iOS微信支付
- IOS-微信支付
- ios -- 微信 支付
- 微信支付iOS
- iOS 微信支付
- iOS微信支付
- iOS--微信支付
- iOS 微信支付
- ios微信支付
- iOS 微信支付
- iOS微信支付
- iOS微信支付
- Select模型解析-什么时候可写
- Matlab 画向量 笔记一下
- base64编码是怎么工作的?
- 6-1-3 字符类型-包裹类型-.点运算符-包裹类型的用法-包裹类型是所有者
- struts使用的一些注意事项
- 关于ios支付(阿里,微信)
- javascript 验证小结
- 邮件发送系统设计——忘记密码发送邮件的设计(2)
- 函数调用原理研究(不用传递参数的函数调用)
- IO流练习
- mysql安装常见问题
- S4S2H4架构实现整合
- three.js 源码注释(六十八)extras/geometries/BoxGeometry.js
- XD01-客户主数据屏幕增强