我们可以通过编程方式在iPhone上通过SSL实现HTTP摘要代理,是否可能?

时间:2015-02-18 23:08:43

标签: ios authentication ssl http-proxy digest

我正在尝试通过SSL为我的一个客户端实现Http摘要身份验证。我找不到任何与此相关的参考资料。这有可能实现吗?

由于

1 个答案:

答案 0 :(得分:0)

经过多次研究,我发现,iOS并没有提供任何这样的内置支持,通过SSL进行Http身份验证,期待SOCKS。但是如果您迫切希望实现它,请创建一个套接字并执行Digest / NTLM / ...握手并使用相同的套接字创建输入/输出流。截至目前,这是唯一的方法。

但是,对于常规的Http请求,例如POST / GET / ...,您可以使用NSURLConnection类作为以下代码来验证服务器。

- (void)connection:(NSURLConnection *)connection didReceiveAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge
{
    NSLog(@"InShiva didReceiveAuthenticationChallenge") ;
    if ([challenge previousFailureCount] == 0)
    {
        NSLog(@"received authentication challenge");
        NSURLCredential *newCredential = [NSURLCredential credentialWithUser:@"username"
                                                                password:@"password"
                                                             persistence:NSURLCredentialPersistenceForSession];
        NSLog(@"credential created");
        [[challenge sender] useCredential:newCredential forAuthenticationChallenge:challenge];
        NSLog(@"responded to authentication challenge");
    }
    else
    {
        NSLog(@"previous authentication failure");
    }
}