我正在尝试使用AFNetworking设置的Authorization标头在我的Python服务器上进行身份验证。在我提出请求之前,我将AFNetworking客户端设置为:
// global.globalAFHTTPClient is my AFclient in this case
[global.globalAFHTTPClient setAuthorizationHeaderWithUsername:global.userEmail
password:global.password];
在服务器上,我可以像这样访问标题:
self.request.headers['Authorization']
我的问题是,在服务器上,如何从Authorization标头中提取用户名和密码?我需要先解码Base64编码吗?我是否像字典那样对待标题?
这是正确的方法吗?
authorizationHeader = self.request.headers['Authorization']
username = authorizationHeader['username']
password = authorizationHeader['password']
答案 0 :(得分:0)
您需要先解码它。在您的示例中,您只需要解码“KG51bGwpOihndWxsKQ ==”。这应该解码为格式为'username:password'的字符串。
可能有一些库可以为您执行此操作,但这取决于您的服务器堆栈。