我有一个工作的网络服务,这是不安全的(http),我尝试从我的iPhone应用程序及其工作连接到它!我想使这个Web服务安全,因此从IIS创建了自签名证书并让服务使用它。我现在有一个使用https的安全Web服务,现在我希望我的应用程序访问这个安全的Web服务,我正在画一个空白。
以下是我用来访问不安全的Web服务的代码,请您提供一个访问安全Web服务的简单选项,只需将URL更改为https不起作用。
(XXXXXSessionDispatcher *) sessionForLoginDict: (NSDictionary *)loginDict
serviceHost: (NSString *)serviceHost
{
NSString *urlString = [NSString stringWithFormat:@"httpsxxx%@/xxxxxxxxxxxxxxx/OpenSession",serviceHost];
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:loginDict options:kNilOptions error:nil];
NSString *jsonString = [[NSString alloc] initWithBytes:[jsonData bytes] length:[jsonData length] encoding:NSUTF8StringEncoding];
return [[XXXXXSessionDispatcher alloc] initFromJSONString:urlString jsonString:jsonString];
}
答案 0 :(得分:0)
问题是iOS不接受自签名证书。根据您用于连接服务的类/方法,设置代码有不同的方式,以便它接受自签名证书。
此外,执行此操作时,请确保此代码仅在调试模式下运行,否则您将发送不安全的代码。