DjangoのRequestとResponseシリーズの10
4496 ワード
1,HttpRequest知識まとめ
定義:
サーバはhttpプロトコルのリクエストを受信すると、メッセージに基づいてHttpRequestオブジェクトを作成します.このオブジェクトは作成する必要はありません.サーバで構築したオブジェクトを直接使用すればいいです.ビューの最初のパラメータは、django.httpモジュールでHttpRequestオブジェクトのAPIを定義するHttpRequestオブジェクトでなければなりません.
属性:
QueryDictオブジェクト定義django.http.QueryDict HttpRequestオブジェクトの属性GET、POSTはいずれもQueryDictタイプのオブジェクト である. python辞書とは異なり、QueryDictタイプのオブジェクトが同じキーに複数の値を持つ場合を処理するために使用される メソッドget():キー取得値に基づいて1つのキーが同時に複数の値を持つと最後の値が取得されますキーが存在しない場合はNone値が返され、デフォルト値を設定して後続処理できます
メソッドgetlist():キー取得値に基づいて値をリストで返し、指定したキーのすべての値を取得できますキーが存在しない場合は空のリスト[]を返し、デフォルト値を設定して後続処理を行うことができます
GET属性要求フォーマット: リクエストアドレスの最後に使用しますか?その後、「キー=値」の形式でつなぎ、複数のキー値ペア間を&で接続します.
例:URLは以下の通り
http://www.baidu.com/?name=xiaoke&age=26&hobby=python
要求パラメータは次のとおりです.
name=xiaoke&age=26&hobby=python
分析要求パラメータ:
キーは「name」、「age」、「hobby」、値は「xiaoke」、「26」、「python」です.DjangoではHttpRequestオブジェクトのGET属性を使用してget側方式要求のパラメータを取得できます.GET属性はQueryDictタイプのオブジェクトを返し、キーと値は文字列タイプです.キーは、開発者がコードを作成するときに決定します.値はデータに基づいて生成されます.
POST属性 formフォーム要求を使用する場合、method方式がpostであればpost方式の要求が開始され、HttpRequestオブジェクトのPOST属性受信パラメータを使用する必要があり、POST属性はQueryDictタイプのオブジェクトを返す.
質問:フォームformはどのようにパラメータを提出しますか?答え:コントロールname属性の値をキーとし、value属性の値を値とし、キー値対コミットを構成します.コントロールにnameプロパティがない場合はコミットされません.checkboxコントロールの場合、nameプロパティの値は同じグループで、選択されたアイテムがコミットされ、キーが多ければ多い場合があります.キーはコントロールname属性の値であり、開発者によって作成されます.値はユーザーが記入または選択したものです.
2,HttpResponseオブジェクト
定義#テイギ#
ビューは、リクエストを受信して処理した後、HttpResponseオブジェクトまたはサブオブジェクトを返す必要があります.HttpResponseオブジェクトのAPIはdjango.httpモジュールで定義されています.HttpRequestオブジェクトはDjangoによって作成され、HttpResponseオブジェクトは開発者によって作成されます.
ツールバーの content:返される内容を表します. charset:responseが採用する符号化文字セットを表し、デフォルトはutf-8である. status_code:返されるHTTP応答ステータスコード. content-type:データを返すMIMEタイプを指定します.デフォルトは「text/html」です.
方法 init:HttpResponseオブジェクトを作成し、コンテンツの初期化を完了します. set_Cookie:Cookie情報を設定します. write:応答体にデータを書きます. cookieは、ブラウザにキー値で格納された純粋なテキスト情報であり、ユーザー追跡を実現します.–max_ageは、指定した秒数後に期限が切れたことを示す整数です.–expiresはdatetimeまたはtimedeltaオブジェクトで、セッションはこの指定した日付/時間で期限切れになります.–max_ageとexpiresの2つを選択します.有効期限を指定しないと、ブラウザを閉じるとクッキーが有効期限が切れます.
set_cookie(key, value=”, max_age=None, expires=None)
delete_Cookie(key):指定したkeyのCookieを削除し、keyが存在しない場合は何も発生しません.
サブクラスJsonResponse
ブラウザでjavascriptを使用してajaxリクエストを開始すると、json形式のデータが返されます.クラスJsonResponseはHttpResponseオブジェクトから継承され、django.httpモジュールで定義され、オブジェクトの作成時に辞書をパラメータとして受信します. JsonResponseオブジェクトのcontent-typeは'アプリケーション/json'です.
サブクラスHttpResponseRedirect
1つの論理処理が完了すると、クライアントにデータを提示する必要はなく、追加に成功し、修正に成功し、削除に成功した後にデータリストを表示するなど、他のページに戻る必要があります.データのリストビューはすでに開発が完了しており、リストのコードを再作成する必要はありません.このビューに移動すればいいです.この場合、ユーザーが要求した効果をシミュレートする必要があります.1つのビューから別のビューに移動することをリダイレクトと呼びます. Djangoでは、HttpResponseRedirectオブジェクトのリダイレクト機能が提供され、このクラスはHttpResponseから継承され、django.httpモジュールで定義され、返されるステータスコードは302である.
定義:
サーバはhttpプロトコルのリクエストを受信すると、メッセージに基づいてHttpRequestオブジェクトを作成します.このオブジェクトは作成する必要はありません.サーバで構築したオブジェクトを直接使用すればいいです.ビューの最初のパラメータは、django.httpモジュールでHttpRequestオブジェクトのAPIを定義するHttpRequestオブジェクトでなければなりません.
属性:
path: , , 。
method: , HTTP , :'GET'、'POST'。
get , 。
, method post post 。
encoding: , 。
None , utf-8。
,
GET: , get 。
POST: , post 。
FILES: , 。
COOKIES: Python , cookie, 。
session: , , Django
QueryDictオブジェクト
dict.get(' ', )
dict[' ']
メソッドgetlist():キー取得値に基づいて値をリストで返し、指定したキーのすべての値を取得できますキーが存在しない場合は空のリスト[]を返し、デフォルト値を設定して後続処理を行うことができます
dict.getlist(' ', )
GET属性
例:URLは以下の通り
http://www.baidu.com/?name=xiaoke&age=26&hobby=python
要求パラメータは次のとおりです.
name=xiaoke&age=26&hobby=python
分析要求パラメータ:
キーは「name」、「age」、「hobby」、値は「xiaoke」、「26」、「python」です.DjangoではHttpRequestオブジェクトのGET属性を使用してget側方式要求のパラメータを取得できます.GET属性はQueryDictタイプのオブジェクトを返し、キーと値は文字列タイプです.キーは、開発者がコードを作成するときに決定します.値はデータに基づいて生成されます.
POST属性
質問:フォームformはどのようにパラメータを提出しますか?答え:コントロールname属性の値をキーとし、value属性の値を値とし、キー値対コミットを構成します.コントロールにnameプロパティがない場合はコミットされません.checkboxコントロールの場合、nameプロパティの値は同じグループで、選択されたアイテムがコミットされ、キーが多ければ多い場合があります.キーはコントロールname属性の値であり、開発者によって作成されます.値はユーザーが記入または選択したものです.
2,HttpResponseオブジェクト
定義#テイギ#
ビューは、リクエストを受信して処理した後、HttpResponseオブジェクトまたはサブオブジェクトを返す必要があります.HttpResponseオブジェクトのAPIはdjango.httpモジュールで定義されています.HttpRequestオブジェクトはDjangoによって作成され、HttpResponseオブジェクトは開発者によって作成されます.
ツールバーの
方法
set_cookie(key, value=”, max_age=None, expires=None)
サブクラスJsonResponse
ブラウザでjavascriptを使用してajaxリクエストを開始すると、json形式のデータが返されます.クラスJsonResponseはHttpResponseオブジェクトから継承され、django.httpモジュールで定義され、オブジェクトの作成時に辞書をパラメータとして受信します.
サブクラスHttpResponseRedirect
1つの論理処理が完了すると、クライアントにデータを提示する必要はなく、追加に成功し、修正に成功し、削除に成功した後にデータリストを表示するなど、他のページに戻る必要があります.データのリストビューはすでに開発が完了しており、リストのコードを再作成する必要はありません.このビューに移動すればいいです.この場合、ユーザーが要求した効果をシミュレートする必要があります.1つのビューから別のビューに移動することをリダイレクトと呼びます.