異なるシステムは、異なるインターフェイスは、このようなクッキー、共通の要求処理、セッション要求処理、トークン要求処理などの処理メカニズムを、要求しています
1、クッキー要求処理
以下の実施例は、クッキーは、要求を処理し、要求処理は、単純にすることができ、各要求ヘッダー値をもたらす比較的単純なクッキー、クッキーであります
DEF :()test_login URL = ' http://www.renren.com/ajaxLogin/login ' のparams = { ' 1 ':' 1 '、' uniqueTimestamp ':' 20201418255 ' } DATAS = { ' メール':' XXXXX @ 163.com ' ' ICODE ':'' 、' origURL ':' http://www.renren.com/home "、' ドメイン':' renren.com '、' のkey_id ':' 1 '、' captcha_type ':' web_login ' 、 ' パスワード':' 9476d406614f42ecefdaba8e9d525e14a20ea9b188e3a3c0c7741de13ca51e43 '、' RKEY ':' 7773848e037e15b9883721139f3c1ac4 ' } R = requests.post(URL = URL、のparams =のparams、データ= DATAS) RT =r.text 戻り r.cookies #戻りクッキー DEF test_profile(): URL = ' http://www.renren.com/273782860/profile ' R&LT = requests.get(URL = URL、クッキー= test_login())コール#ときテープクッキーの 印刷(r.text)
2、セッション要求プロセス
セッションクッキーと同様の処理要求処理は、実際には、セッションIDが格納されたセッションクッキーは、ID要求を送信し、クライアントは要求を再送信し、リクエストヘッダは、(クッキー)の戻りベルトセッションIDを必要としています
ロードマップ:
1、ログイン要求を送信する
2は、ログインが成功し、クライアントに返される情報は、セッションID
セッションID要求ヘッダ(クッキー)リターンベルトを必要とする、3、クライアントが要求を再送信します。
DEF :()test_login URL = ' http://www.renren.com/ajaxLogin/login ' のparams = { ' 1 ':' 1 '、' uniqueTimestamp ':' 20201418255 ' } DATAS = { ' メール':' XXXXX @ 163.com ' ' ICODE ':'' 、' origURL ':' http://www.renren.com/home "、' ドメイン':' renren.com '、' のkey_id ':' 1 '、' captcha_type ':' web_login ' 、 ' パスワード':' 9476d406614f42ecefdaba8e9d525e14a20ea9b188e3a3c0c7741de13ca51e43 '、' RKEY ':' 7773848e037e15b9883721139f3c1ac4 ' } R = requests.post(URL = URL、のparams =のparams、データ= DATAS) RT =r.text 戻り r.cookies #戻りクッキー DEF test_profile(): URL = ' http://www.renren.com/273782860/profile ' R&LT = requests.get(URL = URL、クッキー= test_login()) #のコールときテープクッキーの 印刷(r.text)
上のクッキー、処理セッション要求の流れ、ライブラリを要求は、セッションのセッションを処理するために使用することができます
インポート要求が インポート要求が DEF :()test_login URL = ' http://www.renren.com/ajaxLogin/login ' のparams = { ' 1 ':' 1 '、' uniqueTimestamp ':' 20201418255 ' } DATASを = { ' メール':' XXXXXX、' ICODE ' :'' 、' origURL ' :"http://www.renren.com/home ' 'ドメイン' :' renren.com ' 'のkey_id ' :' 1 ' ' captcha_type ' :' web_login ' ' パスワード':' 9476d406614f42ecefdaba8e9d525e14a20ea9b188e3a3c0c7741de13ca51e43 ' ' RKEY ":' 7773848e037e15b9883721139f3c1ac4 ' } の =要求。セッション() # 建立セッション会话 R = s.post(URL = URL、paramsは= paramsは、データ= DATAS) RT = r.text リターン S #1 セッションを DEF test_profile(): URL = ' http://www.renren.com/273782860/プロファイル「 R = test_login()。取得します(URL = URL ) プリント(r.text)
3、トークン要求処理
トークン
トークンは、ユーザID認証。
最も単純なトークンからなる:UID(ユーザの一意のID)、時刻(現在時刻のタイムスタンプ)、サイン(署名)。
ロードマップのリクエストトークン:
1)、ログに記録する要求送信
)2を、ログインが成功した後、サーバはトークンを含むクライアントのレスポンスデータに戻った
3)、クライアントが要求を再送信します(たとえば、各プロファイルの表示など)、あなたは内部のクライアントに持参する必要がありますトークン、トークン要求パラメータは、一般に、次の2つの方法有し
、クライアント要求パラメータ{「ユーザ」:3465、「トークン」:「rtyuio45678fdg」}
内の最初の要求Bを
デフ)(ログイン: データ = { " ユーザ名":" 管理者"、" パスワード":" 管理者" } 、R = requests.post( URL = ' http://127.0.0.1:5000/login ' 、 JSON = データ) 戻り r.json()' access_tokenは' ] #返回トークン デフ書籍(): ヘッダー = { ' 許可':' JWT {0} ' .formatは(ログイン())} #トークン要求ヘッダー内に含まれる R&LT = requests.get( URL = ' http://127.0.0.1:5000/profile ' 、 ヘッダ =ヘッダ) #1 テープ要求ヘッド 印刷(r.text)
クッキー、セッションの間の差は、トークンは(https://blog.csdn.net/qq_37939251/article/details/83511451に以下に再現しました)
トークン
トークンは、ユーザID認証。
最も単純なトークンからなる:UID(ユーザの一意のID)、時刻(現在時刻のタイムスタンプ)、サイン(署名)。
5点の理解トークン認証には
トークンは、情報の収集であり、
以降のリクエストでデータベースクエリの機会を減少させるために、トークン十分な情報に含まれる、
サーバは、クッキーとHTTPヘッダーAuthrorizationトークン検査情報を必要とします。
セッション
セッションは、サーバーとのセッションのブラウザに代わって、このプロセスは連続的であり、それは断続的にすることができます。
セッションIDが格納されたクッキーは、このIDは、要求に応じて送信される、
セッション要求(リクエストオブジェクト)が生成するので、
セッションは、セッション内の任意のオブジェクトを格納することができる容器である、
セッションの作成および使用は、サービス側では常に、ブラウザあまりにもセッションオブジェクトを取得することはありません。
セッションは、HTTP記憶機構で、武装したHTTPのための持続的なメカニズムを提供するために。
クッキーの
ブラウザに送信され、ユーザーのローカルターミナルサーバー生成上のデータを保存すると、サーバー統一ウェブサイトに次の要求。
クッキーとセッションは区別
サーバー上で、クッキーのデータがクライアントに保存されているセッションデータを、
クッキーは非常に安全ではない、とセーブデータを制限され、
サーバーのパフォーマンスを占め、増加にアクセスする際のセッションでいくつかの時間は、サーバー上に保存されました。
トークンとのセッション
より良いセッションよりも認証、セキュリティトークンラインとして、
セッション認証は、単に時間のために、理由SIDの予測不可能性を、セッションへのユーザー情報を保存するには、安全と見なされています。これは、認証の手段です。それはOAuthのトークンまたは同様のメカニズムを参照する場合、トークンは、その後、認証と承認を提供することで、認証は、ユーザーのために、アプリケーションのために許可されています。その目的は、情報のAppユーザーにアクセス権を許可することです。
トークンとクッキー
クッキードメインの崩壊は、アクセスが許可されていないが、トークンのサポートは、ユーザ認証情報がHTTPヘッダを送信を介して送信することを提供されます。
トークンは、そのようなあなたの承認(ログイン)プログラムとして、トークンのとき、彼はあなたがソフトウェアのライセンスを取得しているかどうかを判断するための基礎であり、クッキーは、ログイン情報を含むクライアント上のTXTファイルに書かれたと同じように、あなたがでていることさ唯一のセッションでのセッションとクッキーは、ファイルサーバに書かれているが、また、クライアント上の書き込みCookieファイルする必要がありますが、お使いのブラウザの数のファイル、ログイン時間のウェブサイト、それが自動的にユーザー名をログに記録し、自動的にクッキーを呼び出します.Session状態は、サーバー側で、クライアントセッションIDのみが格納されている、とトークンのステータスがクライアントに保存されています。
参考リンクします。https://blog.csdn.net/qq_37939251/article/details/83511451