http —HTTPモジュール
ソースコード: :source: `Lib / http / __ init __。py`
http は、ハイパーテキスト転送プロトコルを操作するためのいくつかのモジュールを収集するパッケージです。
- http.client は低レベルのHTTPプロトコルクライアントです。 高レベルのURLを開くには、 urllib.request を使用します
- http.server には、 socketserver に基づく基本的なHTTPサーバークラスが含まれています。
- http.cookies には、Cookieを使用して状態管理を実装するためのユーティリティがあります
- http.cookiejar はCookieの永続性を提供します
http は、 http.HTTPStatus 列挙型を介して多数のHTTPステータスコードと関連メッセージを定義するモジュールでもあります。
- class http.HTTPStatus
バージョン3.5の新機能。
enum.IntEnum のサブクラスで、英語で記述されたHTTPステータスコード、理由フレーズ、および長い説明のセットを定義します。
使用法:
>>> from http import HTTPStatus >>> HTTPStatus.OK <HTTPStatus.OK: 200> >>> HTTPStatus.OK == 200 True >>> HTTPStatus.OK.value 200 >>> HTTPStatus.OK.phrase 'OK' >>> HTTPStatus.OK.description 'Request fulfilled, document follows' >>> list(HTTPStatus) [<HTTPStatus.CONTINUE: 100>, <HTTPStatus.SWITCHING_PROTOCOLS: 101>, ...]
HTTPステータスコード
サポートされている、 http.HTTPStatus で使用可能な IANA登録済みステータスコードは次のとおりです。
コード | 列挙型名 | 詳細 |
---|---|---|
100
|
CONTINUE
|
HTTP / 1.1 RFC 7231 、セクション6.2.1 |
101
|
SWITCHING_PROTOCOLS
|
HTTP / 1.1 RFC 7231 、セクション6.2.2 |
102
|
PROCESSING
|
WebDAV RFC 2518 、セクション10.1 |
200
|
OK
|
HTTP / 1.1 RFC 7231 、セクション6.3.1 |
201
|
CREATED
|
HTTP / 1.1 RFC 7231 、セクション6.3.2 |
202
|
ACCEPTED
|
HTTP / 1.1 RFC 7231 、セクション6.3.3 |
203
|
NON_AUTHORITATIVE_INFORMATION
|
HTTP / 1.1 RFC 7231 、セクション6.3.4 |
204
|
NO_CONTENT
|
HTTP / 1.1 RFC 7231 、セクション6.3.5 |
205
|
RESET_CONTENT
|
HTTP / 1.1 RFC 7231 、セクション6.3.6 |
206
|
PARTIAL_CONTENT
|
HTTP / 1.1 RFC 7233 、セクション4.1 |
207
|
MULTI_STATUS
|
WebDAV RFC 4918 、セクション11.1 |
208
|
ALREADY_REPORTED
|
WebDAVバインディング拡張機能 RFC 5842 、セクション7.1(実験的) |
226
|
IM_USED
|
HTTPでのデルタエンコーディング RFC 3229 、セクション10.4.1 |
300
|
MULTIPLE_CHOICES
|
HTTP / 1.1 RFC 7231 、セクション6.4.1 |
301
|
MOVED_PERMANENTLY
|
HTTP / 1.1 RFC 7231 、セクション6.4.2 |
302
|
FOUND
|
HTTP / 1.1 RFC 7231 、セクション6.4.3 |
303
|
SEE_OTHER
|
HTTP / 1.1 RFC 7231 、セクション6.4.4 |
304
|
NOT_MODIFIED
|
HTTP / 1.1 RFC 7232 、セクション4.1 |
305
|
USE_PROXY
|
HTTP / 1.1 RFC 7231 、セクション6.4.5 |
307
|
TEMPORARY_REDIRECT
|
HTTP / 1.1 RFC 7231 、セクション6.4.7 |
308
|
PERMANENT_REDIRECT
|
永続的なリダイレクト RFC 7238 、セクション3(実験的) |
400
|
BAD_REQUEST
|
HTTP / 1.1 RFC 7231 、セクション6.5.1 |
401
|
UNAUTHORIZED
|
HTTP /1.1認証 RFC 7235 、セクション3.1 |
402
|
PAYMENT_REQUIRED
|
HTTP / 1.1 RFC 7231 、セクション6.5.2 |
403
|
FORBIDDEN
|
HTTP / 1.1 RFC 7231 、セクション6.5.3 |
404
|
NOT_FOUND
|
HTTP / 1.1 RFC 7231 、セクション6.5.4 |
405
|
METHOD_NOT_ALLOWED
|
HTTP / 1.1 RFC 7231 、セクション6.5.5 |
406
|
NOT_ACCEPTABLE
|
HTTP / 1.1 RFC 7231 、セクション6.5.6 |
407
|
PROXY_AUTHENTICATION_REQUIRED
|
HTTP /1.1認証 RFC 7235 、セクション3.2 |
408
|
REQUEST_TIMEOUT
|
HTTP / 1.1 RFC 7231 、セクション6.5.7 |
409
|
CONFLICT
|
HTTP / 1.1 RFC 7231 、セクション6.5.8 |
410
|
GONE
|
HTTP / 1.1 RFC 7231 、セクション6.5.9 |
411
|
LENGTH_REQUIRED
|
HTTP / 1.1 RFC 7231 、セクション6.5.10 |
412
|
PRECONDITION_FAILED
|
HTTP / 1.1 RFC 7232 、セクション4.2 |
413
|
REQUEST_ENTITY_TOO_LARGE
|
HTTP / 1.1 RFC 7231 、セクション6.5.11 |
414
|
REQUEST_URI_TOO_LONG
|
HTTP / 1.1 RFC 7231 、セクション6.5.12 |
415
|
UNSUPPORTED_MEDIA_TYPE
|
HTTP / 1.1 RFC 7231 、セクション6.5.13 |
416
|
REQUESTED_RANGE_NOT_SATISFIABLE
|
HTTP /1.1範囲要求 RFC 7233 、セクション4.4 |
417
|
EXPECTATION_FAILED
|
HTTP / 1.1 RFC 7231 、セクション6.5.14 |
421
|
MISDIRECTED_REQUEST
|
HTTP / 2 RFC 7540 、セクション9.1.2 |
422
|
UNPROCESSABLE_ENTITY
|
WebDAV RFC 4918 、セクション11.2 |
423
|
LOCKED
|
WebDAV RFC 4918 、セクション11.3 |
424
|
FAILED_DEPENDENCY
|
WebDAV RFC 4918 、セクション11.4 |
426
|
UPGRADE_REQUIRED
|
HTTP / 1.1 RFC 7231 、セクション6.5.15 |
428
|
PRECONDITION_REQUIRED
|
追加のHTTPステータスコード RFC 6585 |
429
|
TOO_MANY_REQUESTS
|
追加のHTTPステータスコード RFC 6585 |
431
|
REQUEST_HEADER_FIELDS_TOO_LARGE
|
追加のHTTPステータスコード RFC 6585 |
451
|
UNAVAILABLE_FOR_LEGAL_REASONS
|
法的障害を報告するためのHTTPステータスコード RFC 7725 |
500
|
INTERNAL_SERVER_ERROR
|
HTTP / 1.1 RFC 7231 、セクション6.6.1 |
501
|
NOT_IMPLEMENTED
|
HTTP / 1.1 RFC 7231 、セクション6.6.2 |
502
|
BAD_GATEWAY
|
HTTP / 1.1 RFC 7231 、セクション6.6.3 |
503
|
SERVICE_UNAVAILABLE
|
HTTP / 1.1 RFC 7231 、セクション6.6.4 |
504
|
GATEWAY_TIMEOUT
|
HTTP / 1.1 RFC 7231 、セクション6.6.5 |
505
|
HTTP_VERSION_NOT_SUPPORTED
|
HTTP / 1.1 RFC 7231 、セクション6.6.6 |
506
|
VARIANT_ALSO_NEGOTIATES
|
HTTPでの透過的なコンテンツネゴシエーション RFC 2295 、セクション8.1(実験的) |
507
|
INSUFFICIENT_STORAGE
|
WebDAV RFC 4918 、セクション11.5 |
508
|
LOOP_DETECTED
|
WebDAVバインディング拡張機能 RFC 5842 、セクション7.2(実験的) |
510
|
NOT_EXTENDED
|
HTTP拡張フレームワーク RFC 2774 、セクション7(実験的) |
511
|
NETWORK_AUTHENTICATION_REQUIRED
|
追加のHTTPステータスコード RFC 6585 、セクション6 |
下位互換性を維持するために、列挙値は http.client モジュールにも定数の形式で存在します。 列挙型の名前は定数名と同じです(つまり、 http.HTTPStatus.OK
はhttp.client.OK
としても利用できます。
バージョン3.7で変更: 421 MISDIRECTED_REQUEST
ステータスコードを追加しました。
バージョン3.8の新機能: 451 UNAVAILABLE_FOR_LEGAL_REASONS
ステータスコードを追加しました。