###分からないこと
Python2.7でjwtを利用した認証の学習をしています。
base64でjsonデータのデコード、エンコードの処理の違いが分かりません。
最初のコードではbase64でデコードされた一見異なるデータですが、実行すると同じような結果に。
その結果をコピーし、jsonでデコードして、base64でエンコードすると、同じ結果になります。
なぜ、このような結果になるのか分かりません。お忙しいところ恐縮ですが、ご教授頂けると幸いです。
(本来は最後のようなエンコードの結果でなく、最初のソースコードの1で記したようなデータにしたいと思っています。
最初の1のソースコードはJWTのページ(https://jwt.io)から持って参りました。)
###該当のソースコード
python
1import base64 2print(base64.urlsafe_b64decode('eyJhbGciOiAiSFMyNTYiLCAidHlwIjogIkpXVCJ9'))#1 3print(base64.urlsafe_b64decode('eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9'))#2
実行結果
{"alg": "HS256", "typ": "JWT"} (1)
{"alg":"HS256","typ":"JWT"} (2)
python
1import base64 2import json 3print(base64.urlsafe_b64encode(json.dumps({ 4 "alg": "HS256", "typ": "JWT" 5}))) #1 6print(base64.urlsafe_b64encode(json.dumps({ 7 "alg":"HS256","typ":"JWT" 8}))) #2 9#jsonの中身のデータは上記の実行結果をコピーしました。
実行結果
eyJhbGciOiAiSFMyNTYiLCAidHlwIjogIkpXVCJ9 (1)
eyJhbGciOiAiSFMyNTYiLCAidHlwIjogIkpXVCJ9 (2)
###補足情報(言語/FW/ツール等のバージョンなど)
Python2.7
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/05/27 07:36