我有一个工作的web服务,这是不安全的(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];
}发布于 2013-06-29 13:20:42
问题是iOS不接受自签名证书。根据您用于连接到服务的类/方法的不同,有不同的方式设置您的代码,使其接受自签名证书。
此外,在执行此操作时,请确保此代码仅在调试模式下运行,否则您将发布不安全的代码。
https://stackoverflow.com/questions/17376695
复制相似问题