Dav*_*idM 10 iphone ssl ssl-certificate
我在我的iPhone 3G OS 3.0.1上使用我的iPhone应用程序没有任何问题.该应用程序通过https://api.serverdensity.com/1.0/连接到API URL,所有请求都通过它.
该应用程序的用户报告他们现在突然收到错误"不受信任的服务器证书".没有其他用户遇到这个问题(我知道),我无法重现它.
SSL证书是*.serverdensity.com上的通配符证书.它从GoDaddy购买,有效期至2010年5月.
此外,用户正在运行OS 3.0.1,在设备上正确设置时间/日期,如果他访问Safari中的API URL,则会正确加载.
有什么建议的原因吗?
我有同样的问题!
你在那里安装了"中级证书套装"吗?如果不这样做,那么您将在所有移动平台(以及一些PC平台)上获得不受信任的服务器证书.
网站报价:
在安装已颁发的SSL证书之前,必须在Web服务器上下载并安装我们的中间证书包.您也可以从存储库下载该包.
查看用于Web服务器设置的GoDaddy SSL安装说明.
可以在此处找到中级证书包.
小智 6
看起来所有东西都会通过安装证书来检查.所有中间证书都由服务器发送:http://www.sslshopper.com/ssl-checker.html?hostname = api.serverdensity.com
我们之前在连接到我们的 API 时使用基本 HTTP AUTH 的“硬编码”身份验证方法:
NSString *requestURL = [NSString stringWithFormat:@"https://%@:%@@api.serverdensity.com/1.0/?account=%@.serverdensity.com&c=%@", username, password, account, command];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:requestURL] cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0];
Run Code Online (Sandbox Code Playgroud)
但在我们的最新更新中改用“正确”的方法:
NSString *requestURL = [NSString stringWithFormat:@"https://api.serverdensity.com/1.0/?account=%@.serverdensity.com&c=%@", account, command];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:requestURL] cachePolicy:NSURLRequestReloadIgnoringLocalCacheData timeoutInterval:60.0];
Run Code Online (Sandbox Code Playgroud)
使用NSURLCredential正确处理 HTTP 身份验证。此次更新后,相关用户的证书错误消失了。
| 归档时间: |
|
| 查看次数: |
27197 次 |
| 最近记录: |