【发布时间】:2010-06-24 00:28:40
【问题描述】:
我在 SO 上看到了一些类似的问题,但最近没有 - 所以我正在检查是否有任何变化。
我看到 didReceiveAuthenticationChallenge: 完全能够为基本身份验证进行 base64 编码,但是我需要发送基本身份验证 Authorization: 标头的服务器不返回 HTTP401 并且(我假设?)不会导致didReceiveAuthenticationChallenge:要发送的委托消息 - 所以我无法在其中建立凭据。
所以,我使用的是
[urlRequestForMyWorkspace addValue:@"基本" forHTTPHeaderField:@"授权"];
在调用 initWithRequest 之前:
但是 - 我找不到适用于 iphone 的 Objective-c api 来从用户名和密码构建 base64 编码的凭据(除了编写一个,例如http://www.cocoadev.com/index.pl?BaseSixtyFour)。
所以—— 这是唯一的方法,还是有其他方法我可以强制使用标准 api 发送 http 基本身份验证凭据 - 如果服务器没有返回 401,这就是我的m 假设导致 didReceiveAuthnChallenge: 被发送?
谢谢, 理查德
【问题讨论】:
-
在这里操作。问题真的不是关于 base64 api,而是更多关于是否有办法避免我使用它,因为 iphone 清楚地知道如何做到这一点:)
-
最坏结果,您可以尝试在 URL 中包含身份验证字符串:例如user:pass@url.
标签: iphone objective-c base64 basic-authentication