如何使用 AFNetworking 在 iPhone 模拟器中通过 *** IP 地址进行连接?
Posted
技术标签:
【中文标题】如何使用 AFNetworking 在 iPhone 模拟器中通过 *** IP 地址进行连接?【英文标题】:How do I connect over a *** IP Address in iPhone Simulator using AFNetworking? 【发布时间】:2015-06-25 21:27:16 【问题描述】:- (NSString *)baseURL
从文件中提取字符串。
NSString *endpoint = @"/authentication.json";
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
NSString *token = @"mytokenvalue"
[manager.requestSerializer setValue:token forHTTPHeaderField:TOKEN_HEADER];
manager.requestSerializer = [AFJSONRequestSerializer serializer];
NSString *path = [NSString stringWithFormat:@"%@%@", [self baseURL], endpoint];
[manager POST:path
parameters:nil
success:^(AFHTTPRequestOperation *operation, id responseObject)
if (operation.response.statusCode == 200)
[self.delegate validated:true];
failure:^(AFHTTPRequestOperation *operation, NSError *error)
[self.delegate validated:false];
];
(lldb) po 错误 错误域=NSURLErrorDomain 代码=-1012“操作无法完成。(NSURLErrorDomain 错误-1012。)”UserInfo=0x7bf3ed90 NSErrorFailingURLKey=https://1.2.3.4/authentication.json, NSErrorFailingURLStringKey=https://1.2.3.4/authentication.json
我可以在我的终端中通过 *** 连接到 1.2.3.4,但不能通过 AFNetworking。我试过 1.2.3.4 和 https://1.2.3.4.
我有
[AFHTTPRequestOperationManager manager].securityPolicy.allowInvalidCertificates = YES;
在我的应用委托中。
如何通过 AFNetworking 连接到此 IP?
编辑:验证证书链的要点。
我禁用了它并验证AFSecurityPolicy.m
中的域名
确认 db) po [AFHTTPRequestOperationManager manager].securityPolicy.SSLPinningMode
AFSSLPinningModeNone
也保留为 None。
【问题讨论】:
我没有看到您在代码中设置安全策略的位置。 根据list of error codes,您的身份验证已取消NSURLErrorUserCancelledAuthentication = -1012
。所以我会尝试将validatesCertificateChain
设置为NO
[AFHTTPRequestOperationManager manager].securityPolicy.allowInvalidCertificates = YES;
电话在哪里?
在 App Delegate 中分配窗口 rootViewController 并调用 makeKeyAndVisible 之前
您可能无法使用模拟器,因为网络接口属于 Mac OS。
【参考方案1】:
所以我找到了解决方案。那是港口。 cURL 会自动找到正确的端口,但 NSURLconnection 没有。我必须指定
https://1.2.3.4:12345
作为我的网址。 (我电脑的IP)
在我的机器上运行
socat TCP-LISTEN:12345,fork TCP:5.6.7.8:12345
(其中 5.6.7.8 是服务器 IP)
【讨论】:
以上是关于如何使用 AFNetworking 在 iPhone 模拟器中通过 *** IP 地址进行连接?的主要内容,如果未能解决你的问题,请参考以下文章
AFNetworking - 如何通过 ID 发出 POST 请求
如何使用 AFNetworking 框架与 json 一起使用我自己的 api 登录我有令牌要传递但我现在不知道如何使用这些