2

由于一些遗留和内部原因,我需要检索服务器的证书(以及来自链的证书),并读取它的指纹。

我知道这很容易使用 AFNetworking 或 NSURLConnection 来实现,因为我只需要在

- (void)connection:(NSURLConnection *)connection willSendRequestForAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge

但是在使用 ASIHTTPRequest 时是否可以做同样的事情,它基本上只是 CFNetworking 的一个包装器?

再一次,我没有客户端证书,我的目标是从服务器获取证书以读取其颁发者的指纹。

我需要在客户端验证服务器证书的指纹,如果它与我预期的匹配,则继续请求,否则取消请求/抛出错误。这可能使用 ASIHTTPRequest 吗?

4

1 回答 1

3

我确认没有办法使用 CFNetworking(ASIHTTPRequest 正在使用)来执行此操作,请参阅https://devforums.apple.com/thread/87346。对于那些没有 ios Developers 帐户的人(我不确定您为什么要阅读此内容),“不。在深入考虑后,我认为这是不可能的。NSURLConnection 执行此操作,使用私有挂钩进入 CFHTTPStream,你将无法使用它。”

顺便说一句,我们使用 NSURLConnection 重写了我们的网络层并解决了这个问题

于 2013-12-17T19:52:28.633 回答