热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python3从零学习5.10.7、http—HTTP模块

源代码:Libhttp__init__.pyhttp是一个包,它收集了多个用于处理超文本传输协议的模块:http.client是一个低层级的HTTP协议客户端
源代码: Lib/http/__init__.py

 

http 是一个包,它收集了多个用于处理超文本传输协议的模块:

 

http.client 是一个低层级的 HTTP 协议客户端;对于高层级的 URL 访问请使用 urllib.request

 

http.server 包含基于 socketserver 的基本 HTTP 服务类

 

http.COOKIEs 包含一些有用来实现通过 COOKIEs 进行状态管理的工具

 

http.COOKIEjar 提供了 COOKIEs 的持久化

 

http 也是一个通过 http.HTTPStatus 枚举定义了一些 HTTP 状态码以及相关联消息的模块

 

class http.HTTPStatus

 

enum.IntEnum 的子类,它定义了组 HTTP 状态码,原理短语以及用英语书写的长描述文本。

 

用法:

>>>>>> from http import HTTPStatus>>> HTTPStatus.OK>>> HTTPStatus.OK == 200True>>> http.HTTPStatus.OK.value200>>> HTTPStatus.OK.phrase'OK'>>> HTTPStatus.OK.description'Request fulfilled, document follows'>>> list(HTTPStatus)[, , ...]
 HTTP 状态码
已支持并且已在 http.HTTPStatus IANA 注册 的状态码有:

双字母代码

映射名

详情

100

CONTINUE:继续

HTTP/1.1 RFC 7231, Section 6.2.1

101

SWITCHING_PROTOCOLS

HTTP/1.1 RFC 7231, Section 6.2.2

102

PROCESSING

WebDAV RFC 2518, Section 10.1

200

OK

HTTP/1.1 RFC 7231, Section 6.3.1

201

CREATED

HTTP/1.1 RFC 7231, Section 6.3.2

202

ACCEPTED

HTTP/1.1 RFC 7231, Section 6.3.3

203

NON_AUTHORITATIVE_INFORMATION

HTTP/1.1 RFC 7231, Section 6.3.4

204

NO_CONTENT: 没有内容

HTTP/1.1 RFC 7231, Section 6.3.5

205

RESET_CONTENT

HTTP/1.1 RFC 7231, Section 6.3.6

206

PARTIAL_CONTENT

HTTP/1.1 RFC 7233, Section 4.1

207

MULTI_STATUS

WebDAV RFC 4918, Section 11.1

208

ALREADY_REPORTED

WebDAV Binding Extensions RFC 5842, Section 7.1 (Experimental)

226

IM_USED

Delta Encoding in HTTP RFC 3229, Section 10.4.1

300

MULTIPLE_CHOICES:有多种资源可选择

HTTP/1.1 RFC 7231, Section 6.4.1

301

MOVED_PERMANENTLY:永久移动

HTTP/1.1 RFC 7231, Section 6.4.2

302

FOUND:临时移动

HTTP/1.1 RFC 7231, Section 6.4.3

303

SEE_OTHER:已经移动

HTTP/1.1 RFC 7231, Section 6.4.4

304

NOT_MODIFIED:没有修改

HTTP/1.1 RFC 7232, Section 4.1

305

USE_PROXY:使用代理

HTTP/1.1 RFC 7231, Section 6.4.5

307

TEMPORARY_REDIRECT:临时重定向

HTTP/1.1 RFC 7231, Section 6.4.7

308

PERMANENT_REDIRECT:永久重定向

Permanent Redirect RFC 7238, Section 3 (Experimental)

400

BAD_REQUEST:错误请求

HTTP/1.1 RFC 7231, Section 6.5.1

401

UNAUTHORIZED:未授权

HTTP/1.1 Authentication RFC 7235, Section 3.1

402

PAYMENT_REQUIRED:保留,将来使用

HTTP/1.1 RFC 7231, Section 6.5.2

403

FORBIDDEN:禁止

HTTP/1.1 RFC 7231, Section 6.5.3

404

NOT_FOUND:没有找到

HTTP/1.1 RFC 7231, Section 6.5.4

405

METHOD_NOT_ALLOWED:该请求方法不允许

HTTP/1.1 RFC 7231, Section 6.5.5

406

NOT_ACCEPTABLE:不可接受

HTTP/1.1 RFC 7231, Section 6.5.6

407

PROXY_AUTHENTICATION_REQUIRED:要求使用代理验明正身

HTTP/1.1 Authentication RFC 7235, Section 3.2

408

REQUEST_TIMEOUT:请求超时

HTTP/1.1 RFC 7231, Section 6.5.7

409

CONFLICT:冲突

HTTP/1.1 RFC 7231, Section 6.5.8

410

GONE:已经不在了

HTTP/1.1 RFC 7231, Section 6.5.9

411

LENGTH_REQUIRED:长度要求

HTTP/1.1 RFC 7231, Section 6.5.10

412

PRECONDITION_FAILED:前提条件错误

HTTP/1.1 RFC 7232, Section 4.2

413

REQUEST_ENTITY_TOO_LARGE:请求体太大了

HTTP/1.1 RFC 7231, Section 6.5.11

414

REQUEST_URI_TOO_LONG:请求URI太长了

HTTP/1.1 RFC 7231, Section 6.5.12

415

UNSUPPORTED_MEDIA_TYPE:不支持的媒体格式

HTTP/1.1 RFC 7231, Section 6.5.13

416

REQUEST_RANGE_NOT_SATISFIABLE

HTTP/1.1 Range Requests RFC 7233, Section 4.4

417

EXPECTATION_FAILED:期望失败

HTTP/1.1 RFC 7231, Section 6.5.14

422

UNPROCESSABLE_ENTITY:可加工实体

WebDAV RFC 4918, Section 11.2

423

LOCKED:锁着

WebDAV RFC 4918, Section 11.3

424

FAILED_DEPENDENCY:失败的依赖

WebDAV RFC 4918, Section 11.4

426

UPGRADE_REQUIRED:升级需要

HTTP/1.1 RFC 7231, Section 6.5.15

428

PRECONDITION_REQUIRED:先决条件要求

Additional HTTP Status Codes RFC 6585

429

TOO_MANY_REQUESTS:太多的请求

Additional HTTP Status Codes RFC 6585

431

REQUEST_HEADER_FIELDS_TOO_LARGE:请求头太大

Additional HTTP Status Codes RFC 6585

500

INTERNAL_SERVER_ERROR:内部服务错误

HTTP/1.1 RFC 7231, Section 6.6.1

501

NOT_IMPLEMENTED:不可执行

HTTP/1.1 RFC 7231, Section 6.6.2

502

BAD_GATEWAY:无效网关

HTTP/1.1 RFC 7231, Section 6.6.3

503

SERVICE_UNAVAILABLE:服务不可用

HTTP/1.1 RFC 7231, Section 6.6.4

504

GATEWAY_TIMEOUT:网关超时

HTTP/1.1 RFC 7231, Section 6.6.5

505

HTTP_VERSION_NOT_SUPPORTED:HTTP版本不支持

HTTP/1.1 RFC 7231, Section 6.6.6

506

VARIANT_ALSO_NEGOTIATES:服务器存在内部配置错误

透明内容协商在: HTTP RFC 2295, Section 8.1 (实验性的)

507

INSUFFICIENT_STORAGE:存储不足

WebDAV RFC 4918, Section 11.5

508

LOOP_DETECTED:循环检测

WebDAV Binding Extensions RFC 5842, Section 7.2 (Experimental)

510

NOT_EXTENDED:不扩展

An HTTP Extension Framework RFC 2774, Section 7 (Experimental)

511

NETWORK_AUTHENTICATION_REQUIRED:要求网络身份验证

Additional HTTP Status Codes RFC 6585, Section 6

为了保持向后兼容性,枚举值也以常量形式出现在 http.client 模块中,。 枚举名等于常量名 (例如 http.HTTPStatus.OK 也可以是 http.client.OK)。


推荐阅读
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 关键词:Golang, Cookie, 跟踪位置, net/http/cookiejar, package main, golang.org/x/net/publicsuffix, io/ioutil, log, net/http, net/http/cookiejar ... [详细]
  • 本文讨论了在shiro java配置中加入Shiro listener后启动失败的问题。作者引入了一系列jar包,并在web.xml中配置了相关内容,但启动后却无法正常运行。文章提供了具体引入的jar包和web.xml的配置内容,并指出可能的错误原因。该问题可能与jar包版本不兼容、web.xml配置错误等有关。 ... [详细]
  • 【系列二】长连接,短连接及WebSocket介绍(含http1.0,1.1,2.0相关)
    前言上一节讲了长轮询和轮询及其实现,这节讲一讲长连接、短连接及webSocket,在讲这些之前,我们先来普及一下http相关的一 ... [详细]
  • 关于对整站进行二级域名的改造
    缘由在此之前,博客的访问地址为https:www.codelabo.cnblog(当然现在页可以访问,因为做了重定向),改造成了目前的https:blog.codelabo.cn, ... [详细]
  • DWDM是DenseWavelengthDivisionMultiplexing(密集波分复用)的缩写,这是一项用来在现有的光纤骨干网上提 ... [详细]
  • Ajax智能匹配检索(含图含完整代码)
    使用谷歌搜索引擎的用户都知道,只要在文本框中输入部分关键字,就能显示相关搜索提示信息列表。如图:   本技术的核心是通过ASP.NETAjaxControlToolkit中的Aut ... [详细]
  • python学习笔记(3)cookie  session
    一、cookie&session1、cookie:cookie就是由服务器发送给客户端的特殊信息,而这些信息以文本的方式存放在客户端,然后 ... [详细]
  • java local socket_网络通信之Socket与LocalSocket的比较
    Socket与LocalSocket都可以实现网络通信,两个有什么区别呢?LocalSocket其通信方式与Socket差不多,只是Loc ... [详细]
  • web前端|js教程当前路径web前端-js教程简单地说,就是在个人中心页面,该客户点击取消订单,提交到某个action,进行数据库的操作,将一张表中的字段值改变,然后重新返回到个 ... [详细]
  • 目录实现效果:实现环境实现方法一:基本思路主要代码JavaScript代码总结方法二主要代码总结方法三基本思路主要代码JavaScriptHTML总结实 ... [详细]
  • 浏览器如何工作(How browsers work)的阅读笔记
    浏览器如何工作(Howbrowserswork)的阅读笔记1.整体结构完整的浏览器整体框架的发改如下:UI:就是那些我们常常 ... [详细]
author-avatar
落叶野
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有