NSURLRequest未在办公室外的WiFi网络上进行身份验证

问题描述:

我有一个应用程序在我们的https Intranet网站上向Web服务发出NSURL请求。当我连接到我们的办公网络时,它的身份验证很好,我可以进行这些Web服务调用。但是,如果我在外部网络上,则该应用程序无法对我进行身份验证,以便进行这些呼叫。NSURLRequest未在办公室外的WiFi网络上进行身份验证

我正在使用HTTP Post请求。我知道这个代码很好,因为它在我使用公司的无线网络时可以工作。

我试过使用WillSendRequestForAuthenticationChalllenge和canAuthenticateAgainstProtectionSpace,前者被调用。我正确地使用了凭证,但我仍然收到来自Web服务的“已注销”响应。

我被告知明文验证不允许登录到我们的内联网。

我用这个也试过:

NSString *authStr = [NSString stringWithFormat:@"%@:%@", [self username], [self password]]; 
NSData *authData = [authStr dataUsingEncoding:NSASCIIStringEncoding]; 
NSString *authValue = [NSString stringWithFormat:@"Basic %@", [authData base64EncodingWithLineLength:80]]; 
[theRequest setValue:authValue forHTTPHeaderField:@"Authorization"]; 

你写的,它是“内联网”你是在工作。内联网通常是只能在特定网络中访问的本地网站。 你确定,这个网站可以在你的办公室网络之外访问吗?该请求可能只是超时。检查正在返回到您的请求的错误

+0

肯定可以在办公室网络外访问。如果我访问网络浏览器并尝试它,它会询问我的用户名和密码,然后将我登录。错误是“您已注销”消息 –

+0

您的NSURLRequest返回的错误是什么? – prabodhprakash