【问题标题】:NSURLRequest not authenticating on wifi network outside of officeNSURLRequest 不在办公室外的 wifi 网络上进行身份验证
【发布时间】:2016-11-30 18:25:11
【问题描述】:

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

我正在使用 HTTP Post 请求。而且我知道它的代码很好,因为它在我使用公司 wifi 时可以工作。

我尝试过使用 WillSendRequestForAuthenticationChallenge 和 canAuthenticateAgainstProtectionSpace,前者被调用。我正确使用了凭据,但我仍然收到来自网络服务的“您已注销”响应。

我被告知不允许明文身份验证登录到我们的 Intranet。

我也试过用这个:

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"];

【问题讨论】:

    标签: ios objective-c authentication nsurlconnection nsurlrequest


    【解决方案1】:

    您写道,您正在处理的是“Intranet”。 Intranet 通常是只能在特定网络中访问的本地网站。 您确定可以在您的办公网络之外访问该网站吗?该请求可能只是超时。检查返回到您的请求的错误

    【讨论】:

    • 在办公网络之外绝对可以访问。如果我使用网络浏览器进行尝试,它会询问我的用户名和密码,然后让我登录。错误是“您已注销”消息
    • 您的 NSURLRequest 返回的错误是什么?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-02-14
    • 1970-01-01
    • 2011-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-23
    相关资源
    最近更新 更多