- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
如何在 iOS Objective C 中集成 instamojo 支付网关?可能没有直接的方法。那么通过WebView,如何在iOS中集成支付网关呢?已添加长 URL,但重定向链接中应放置什么内容以及发送 header 和参数的键。
最佳答案
为了将 Instamojo 与 ios 应用程序集成,唯一可能的方法是 webview。但是对于打开 webview 首先我们必须发送支付金额和支付信息等数据。重定向 url 用于在交易成功后重定向到页面。我已经给出了网站 Url 之一作为重定向 url 和委托(delegate)方法webview 如果我得到相同的 url,我关闭 webview 作为成功付款的指示。参数 send_email 为真是发送电子邮件以通知。此键值对根据 instamojo 指南进行记录。Api key 和身份验证 token 是凭据你在 instamojo 中创建帐户时得到,该帐户将在 header 字段中传递以验证凭据。作为响应,我们得到长 url 并且在该 url 上应该打开 webview
在按钮上单击调用下面的函数
-(void)func_proceedCheckout
{
NSError *error;
NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration];
NSURLSession *session = [NSURLSession sessionWithConfiguration:configuration];
NSString *post = [NSString stringWithFormat:@"amount=10&purpose=dummy&redirect_url=http://url to be redirected&buyer_name=Aashi&phone=123456789&email=demo@gmail.com&send_email=true&Name=Aashi"];
NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
NSURL * url=[NSURL URLWithString:[NSString stringWithFormat:@"https://www.instamojo.com/api/1.1/payment-requests/"]];//Url to be called
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url];
[request setHTTPMethod:@"POST"];
[request setHTTPBody:postData];
[request addValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[request addValue:@"0" forHTTPHeaderField:@"Content-Length"];
[request addValue:@"123456789" forHTTPHeaderField:@"X-Api-Key"];//Get from Instamojo Account
[request addValue:@"123456789" forHTTPHeaderField:@"X-Auth-Token"];//Get from Instamojo Account
if (!error) {
NSURLSessionDataTask *downloadTask = [session dataTaskWithRequest:request completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
if (!error) {
NSHTTPURLResponse *httpResp = (NSHTTPURLResponse*) response;
if (httpResp.statusCode == 201) {
NSLog(@"%@",httpResp);
NSDictionary* json = [NSJSONSerialization
JSONObjectWithData:data
options:kNilOptions
error:&error];
NSLog(@"%@",json);
NSDictionary * dic = [json objectForKey:@"payment_request"];
NSLog(@"%@",dic);
NSString * longurl = dic[@"longurl"];
NSURL *url = [NSURL URLWithString:longurl];
[[UIApplication sharedApplication] openURL:url options:@{} completionHandler:^(BOOL success) {
if (success) {
NSLog(@"Opened url");
}
}];
}
}
}];
[downloadTask resume];
}
}
我们得到的长 Url 支付选项可以由 webview 处理。longurl 是加载 webview 的 url
关于ios - instamojo 支付网关与 ios objective c 集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42413625/
我可以将 instamojo 支付网关 与 java 集成吗? 在他们的网站 ( https://www.instamojo.com/developers/ ) 中没有提及与 java 的集成。 如果
我在我的 iOS 应用程序中集成了 instamojo 支付网关。我目前正在使用带有 swift 4.0 的 Xcode 9.2。我已经通过 Cocoapods 安装了最新的 SDK。我还在我的服务器
我在 Codeigniter 中集成了 instamojo 支付网关。我想在 instamojo 支付网关中启用沙盒模式,我看不到任何将模式更改为沙盒或测试模式的选项。谁能告诉我如何更改它。 先感谢您
我是 Android 新手,我想在我的应用中添加支付选项。所以,我使用了 instamojo。我在 gradle 文件中包含了 instamojo 库。但是 gradle 文件抛出错误。 错误: Er
我从 API 得到了空值 https://sample-sdk-server.instamojo.com/status ?” + 从 instamojo 支付网关屏幕回调时来自此 url 的值 我在上
我已经使用 CodeIgniter 创建了一个项目,现在我想集成 instamojo 支付网关。但是当我尝试结帐时遇到以下问题。 页面正在加载 一段时间后,它给我以下错误。 "Error: Somet
我已经在 Xcode 8.2.1 和 swift 3 中集成了 instamojo。它工作正常,但是当我运行 Xcode 9 swift 3.2 时,它显示“无法在 Swift 3.0.2 中导入使用
如何在 iOS Objective C 中集成 instamojo 支付网关?可能没有直接的方法。那么通过WebView,如何在iOS中集成支付网关呢?已添加长 URL,但重定向链接中应放置什么内容以
有人知道如何在 Objective-C 中集成 instamojo 支付网关吗?我已经在 Webview 中打开了 Instamojo 支付屏幕,但如何处理支付成功并重定向到应用程序。 最佳答案 用于
当我尝试在本地计算机上的 codeigniter 中集成 instamojo php 支付网关时,我不断收到以下错误消息 "Error: Something went wrong. cURL rais
我是一名优秀的程序员,十分优秀!