这些是请求标头:
let userName = "someUserName"
let password = "aPasswordForSomeUserName"
var headers: HTTPHeaders = [
"Accept": "application/json",
]
if let authorizationHeader = Request.authorizationHeader(user: userName, password: password) {
headers[authorizationHeader.key] = authorizationHeader.value
}
所以这是这样产生Authorization
的。
Basic aC5paHFoOkulbXKhNpk43A==
(为了安全起见,我已经对其进行了修改)。
但是当我在 Advance Rest Client(一个 chrome 扩展)中提出同样的请求时。我看到了这个:
Accept: application/json
Authorization: NTLM TlMMTVNTUAADAAAAGAAYAG4AAAAYABgAhgAAAAYABgBAAAAADAAMAEYAAAAcABwAUgPPPAAAAACeAAAAAYIAAEUARwBBAGgALgBzAGgAYQBoAUIOVABHAC4AUSDFGC4ARQBHAEEALgBMAEEAToD38IenExnddmNhyXz+u0cmIHEl/p8P9OWe2rePPsiRkZO1Ne6ZrWxnIxHK1CZcyTU=
请注意,为我的用户名和密码生成的授权密钥中都有 NTLM 和 Basic。
如何在 iOS 中做到这一点(可能还有 Alamofire)?
这也导致了我之前提出的这个问题。