0

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']
4

1 に答える 1

0

最初にデコードする必要があります。あなたの例では、「KG51bGwpOihndWxsKQ==」をデコードするだけです。これは、'username:password' の形式の文字列にデコードされます。

これを実行できるライブラリがいくつかある可能性がありますが、サーバー スタックによって異なります。

于 2012-11-16T05:07:09.567 に答える