iOS开发支付宝支付成功返回字符串的处理操作
2019/7/9 22:59:55
本文主要是介绍iOS开发支付宝支付成功返回字符串的处理操作,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
{ memo=""; result="partner=\"311811\"&seller_id=\"nse@gmail.com\"&out_trade_no=\"S005372\"&subject=\"\U522b\U5885\U8ba2\U5355\"&body=\"\U5885\"&total_fee=\"0.1\"¬ify_url=\"http://baidu.com\"&service=\"mobile.secy.pay\"&payment_type=\"1\"&_input_charset=\"UTF-8\"&it_b_pay=\"30m\"&success=\"true\"&sign_type=\"RSA\"&sign=\"dMiqkRZvnpTnJp9zbwGNAL3Bu43RMocNwOAsRYFnueZX8Uwy81zXHLg=\""; resultStatus=9000; }
如上所示,为支付宝的返回数据结果。可能有的同学就懵了,这个result是一个字符串怎么把它分解成字典用那。
我封装了一个方法可以用
/** * 支付宝返回字段解析 * * @param AllString 字段 * @param FirstSeparateString 第一个分离字段的词 * @param SecondSeparateString 第二个分离字段的词 * * @return 返回字典 */ +(NSDictionary *)VEComponentsStringToDic:(NSString*)AllString withSeparateString:(NSString *)FirstSeparateString AndSeparateString:(NSString *)SecondSeparateString; +(NSMutableDictionary *)VEComponentsStringToDic:(NSString*)AllString withSeparateString:(NSString *)FirstSeparateString AndSeparateString:(NSString*)SecondSeparateString{ NSMutableDictionary *dic=[NSMutableDictionary dictionary]; NSArray *FirstArr=[AllString componentsSeparatedByString:FirstSeparateString]; for (int i=0; i<FirstArr.count; i++) { NSString *Firststr=FirstArr[i]; NSArray *SecondArr=[Firststr componentsSeparatedByString:SecondSeparateString]; [dic setObject:SecondArr[1] forKey:SecondArr[0]]; } return dic; }
在AppDelegate用的时候代码如下
-(BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation { [[AlipaySDK defaultService] processOrderWithPaymentResult:url standbyCallback:^(NSDictionary *resultDic) { NSInteger orderState=[resultDic[@"resultStatus"]integerValue]; if (orderState==9000) { NSString *allString=resultDic[@"result"]; NSString * FirstSeparateString=@"\"&"; NSString * SecondSeparateString=@"=\""; NSMutableDictionary *dic=[CommonToolsVEComponentsStringToDic:allString withSeparateString:FirstSeparateString AndSeparateString:SecondSeparateString]; NSLog(@"ali=%@",dic); if ([dic[@"success"]isEqualToString:@"true"]) { [[NSNotificationCenter defaultCenter] postNotificationName:@"AliPaySucceed" object:nil userInfo:dic]; } }else{ NSString *returnStr; switch (orderState) { case 8000: returnStr=@"订单正在处理中"; break; case 4000: returnStr=@"订单支付失败"; break; case 6001: returnStr=@"订单取消"; break; case 6002: returnStr=@"网络连接出错"; break; default: break; } [HUDTooles showTextHUD:returnStr]; [HUDTooles removeHUD:4]; } }]; }
以上所述是小编给大家介绍的iOS开发支付宝支付成功返回字符串的处理操作,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对找一找教程网网站的支持!
这篇关于iOS开发支付宝支付成功返回字符串的处理操作的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-08-29Axios库资料:新手入门指南与基本使用教程
- 2024-03-14system bios shadowed
- 2024-03-14gabios
- 2024-02-07iOS应用提交上架的最新流程
- 2024-02-06打包 iOS 的 IPA 文件
- 2023-12-07uniapp打包iOS应用并通过审核:代码混淆的终极解决方案 ?
- 2023-11-25uniapp IOS从打包到上架流程(详细简单) 原创
- 2023-11-10【iOS开发】iOS App的加固保护原理:使用ipaguard混淆加固
- 2023-09-30最强大的iOS应用源码保护工具:Ipa Guard,保护你的商业机密代码
- 2023-09-07iOS安全加固探讨:代码混淆、类名方法名混淆等方法