首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python爬虫http基本原理

比如,对于一个登录表单,输入用户名密码后,点击 “登录” 按钮,这通常会发起一个 POST 请求,其数据通常以表单的形式传输,而不会体现在 URL 中。...一般来说,登录需要提交用户名密码,其中包含了敏感信息,使用 GET 方式请求的话,密码就会暴露在 URL 里面,造成密码泄露,所以这里最好以 POST 方式发送。...登录之前,我们填写了用户名密码信息,提交这些内容就会以表单数据的形式提交给服务器,此时需要注意 Request Headers 中指定 Content-Type 为 application/x-www-form-urlencoded...响应状态码 响应状态码表示服务器的响应状态,如 200 代表服务器正常响应,404 代表页面未找到,500 代表服务器内部发生错误。...服务器未满足期望请求标头字段的要求 500 服务器内部错误 服务器遇到错误,无法完成请求 501 未实现 服务器不具备完成请求的功能 502 错误网关 服务器作为网关或代理,从上游服务器收到无效响应

12910

web应用常见安全攻击手段

一、攻击手段 主动攻击: 直接向应用服务器发起攻击,传入代码,比如OS注入、SQL注入。 被动攻击:诱导客户操作,服务器发送植入非法代码的请求,比如CSRF、XSS。...(1)HTTP响应截断攻击:需要插入两个HTTP换行符,然后并排插入字符串发送,插入的字符串是伪造的响应主体(网页内容)。可以达到跨站脚本攻击相同的效果。...6.XSS(跨站脚本攻击,cross-site script) (1)表单 在URL添加JavaScript代码,获取用户表单信息,并且提交到攻击者的服务器。...> md5(函数)–> 保存值 破解方法: 穷举法、字典 调用相同函数处理候选密码得到值,与目标值比对。...彩虹表 明文值构成的数据库表。能够提高效率。类似字典攻击。

1.3K30
您找到你想要的搜索结果了吗?
是的
没有找到

HTTP基本原理

POST 请求大多为表单提交发起,如一个登录表单,输入用户名密码,点击登录按钮,这通常会发起一个 POST 请求,其数据通常以 Form Data 即表单的形式传输,不会体现在 URL 中。...GET POST 请求方法有如下区别: * GET 方式请求中参数是包含在 URL 里面的,数据可以在 URL 中看到,而 POST 请求的 URL 不会包含这些数据数据都是通过表单的形式传输,会包含在...HEAD 类似于 GET 请求,只不过返回的响应中没有具体的内容,用于获取报头。 POST 指定资源提交数据进行处理请求,数据被包含在请求体中。...Request Status Code 响应状态码,此状态码表示了服务器的响应状态,如 200 则代表服务器正常响应,404 则代表页面未找到,500 则代表服务器内部发生错误。...417 未满足期望值 服务器未满足期望请求标头字段的要求。 500 服务器内部错误 服务器遇到错误,无法完成请求。 501 未实现 服务器不具备完成请求的功能。

1.3K81

HTTP协议请求方法状态码介绍

指定资源提交数据进行处理请求(例如提交表单或者文件上传),数据被包含在请求体中。...POST请求可能会导致新的资源的建立或者对已有资源的修改 PUT 从客户端服务器传送的数据取代指定文档的内容 DELETE 请求服务器删除指定的页面 常见面试题:getpost请求的区别?...,post没限制 3、get请求可以被浏览器自动缓存,post不能缓存 4、get请求在浏览器上前进/后退是无害的,post请求一旦回退则需要重新提交表单 5、get请求会在发送过程中产生一个tcp数据包...比如在未登录状态下,直接访问需要登录才能访问的页面,会被服务器返回302,跳转到登录页面: ?...(Forbidden)表示发送的请求被服务器拒绝了 500(Internal Server Error)服务器内部错误,一般对应后台会有xxxException的log输出 503(server Unavailable

61130

【Linux】应用层协议:HTTPHTTPS

Cache-Control表示客户端要求服务器对请求的资源进行重新获取,而不应该从自己服务器内部的缓存位置中返回任何数据,意味着客户端需要最新的资源。...一般服务器提交数据的时候,前端都是通过form表单的方式来提交,浏览器会自动将form表单中的内容转换为GET或POST方法下的http请求中的某个字段,下面是表单提交的路径方法,一旦输入内容点击登录后...为了解决上面的问题,需要引用session的概念,即浏览器不去保存用户的私密信息到本地上,而是将这样的信息保存在服务器上,服务器主机内部会形成一个session文件,此文件内部用于保存登录网站需要的账号密码等信息...而浏览器的cookie文件负责保存session id,当下一次进行登录,浏览器会服务器推送保存session id的cookie文件,服务器会比对当前发送过来的session id是否在服务器内部也同样存在一份...服务器在第一次密钥协商握手发送的是数字证书,而不仅仅是公钥信息,当客户端收到数字证书后会验证证书的真假,验证方式为把证书拆分成签名和数据两部分,使用证书中的公钥对数字签名进行解密得到值,然后对证书中的数据

17130

测试面试题集-接口测试

GET:发送一个请求来获取服务器上的某一资源,多用于查询数据(如列表查询); POST:将数据添加到服务器中的现有文件或资源(如提交表单或者上传文件),POST 请求可能会导致新的资源的建立或已有资源的修改...• POST方法是指客户端给服务器上提交表单数据,通过报文传输,会把数据放到请求数据字段中以&分隔各个字段,请求行不包含数据参数,地址栏也不会额外附带参数,所以POST是通过表单提交的,请求参数放在body...1.基于请求/响应,支持客户端/服务器模式:客户端发送请求,服务器端响应数据。客户端服务器请求服务,只需要传送请求的方法路径即可。...3.无状态:协议对于事务处理没有记忆能力,客户端第一次与服务器建立连接发送请求需要进行一系列的安全认证匹配等,因此增加页面等待时间,当客户端服务器发送请求,服务器端响应完毕后,两者断开连接,也不保存连接状态...(一刀两断,恩断义绝,从此路人),下一次客户端同样的服务器发送请求,由于他们之前已经遗忘了彼此,所以需要重新建立连接。

90031

Python接口自动化-接口基础(二)

本质上来讲, putpost极为相似,都是服务器发送数据,但它们之间有一个重要区别,put通常指定了资源的存放位置,而post则没有,post数据存放位置由服务器自己决定,客户端服务器传送的数据取代指定文档的内容...POST方法是指客户端给服务器上提交表单数据,会把数据放到请求数据字段中以&分隔各个字段,请求行不包含数据参数,地址栏也不会额外附带参数,所以POST是通过表单提交的,请求参数放在body中,如网页上的新用户的注册...417 :未满足期望值(Expectation Failed ) 服务器未满足”期望”请求标头字段的要求。 500~599(服务器错误) 这些状态代码表示服务器在尝试处理请求发生内部错误。...这些错误可能是服务器本身的错误,而不是请求出错。 500服务器内部错误( Internal Server Error ) 服务器遇到未曾预料的状况,无法完成请求。...客户端服务器请求服务,只需要传送请求的方法路径即可。

55610

小白Java从入门到放弃

比如,浏览器可以发送"user-agent"消息头,告诉web服务器浏览器的类型版本。 c,实体内容 只有当发送post请求,才会有数据(请求参数)。...200: 正确 500: 系统错误 404: 依据请求地址找不到对应的资源 b,若干消息头 服务器也可以发送一些消息头给浏览器,比如,"content-type"消息头,告诉浏览器服务器返回的数据类型...(2)post方式 1)哪一些情况下,会发送post请求 设置表单的method="post"。...(2)500 1)错误原因 a,程序运行时出错。 b,写错。 (3)405 1)错误原因 服务器找不到处理方法。 5,表单包含了中文参数值,如何处理?...当表单提交,浏览器会检查请求参数值,如果是中文,会按照打开该表单所在的页面的字符集来编码(比如,按照"utf-8"来编码)。服务器默认情况下,会使用"iso-8859-1"来解码。

94260

Python接口自动化-接口基础(二)

本质上来讲, putpost极为相似,都是服务器发送数据,但它们之间有一个重要区别,put通常指定了资源的存放位置,而post则没有,post数据存放位置由服务器自己决定,客户端服务器传送的数据取代指定文档的内容...POST方法是指客户端给服务器上提交表单数据,会把数据放到请求数据字段中以&分隔各个字段,请求行不包含数据参数,地址栏也不会额外附带参数,所以POST是通过表单提交的,请求参数放在body中,如网页上的新用户的注册...417 :未满足期望值(Expectation Failed ) 服务器未满足”期望”请求标头字段的要求。 500~599(服务器错误) 这些状态代码表示服务器在尝试处理请求发生内部错误。...这些错误可能是服务器本身的错误,而不是请求出错。 500服务器内部错误( Internal Server Error ) 服务器遇到未曾预料的状况,无法完成请求。...客户端服务器请求服务,只需要传送请求的方法路径即可。

77420

Java从入门到放弃

比如,浏览器可以发送"user-agent"消息头,告诉web服务器浏览器的类型版本。 c,实体内容 只有当发送post请求,才会有数据(请求参数)。...200: 正确 500: 系统错误 404: 依据请求地址找不到对应的资源 b,若干消息头 服务器也可以发送一些消息头给浏览器,比如,"content-type"消息头,告诉浏览器服务器返回的数据类型。...(2)post方式 1)哪一些情况下,会发送post请求 设置表单的method="post"。 2)post请求的特点 a,会将请求参数添加到实体内容里面,可以提交大量的数据。...(2)500 1)错误原因 a,程序运行时出错。 b,写错。 (3)405 1)错误原因 服务器找不到处理方法。 5,表单包含了中文参数值,如何处理? (1)为什么会有乱码?...当表单提交,浏览器会检查请求参数值,如果是中文,会按照打开该表单所在的页面的字符集来编码(比如,按照"utf-8"来编码)。服务器默认情况下,会使用"iso-8859-1"来解码。

91350

接口测试简介以及接口测试用例设计思路

,但是post的提交方式跟get完全不一样,post提交的参数是放在表单里的,所以不会存在字符限制,而且因为参数是放在表单里,不容易被看到,所以会比get更安全。...6.接口测试流程 需求讨论,需求评审,场景设计,编写用,准备数据,执行测试 7.怎么进行接口测试 通过工具模拟客户端服务端发送请求并接受服务器返回的数据来对接口的功能,逻辑业务,异常,安全进行测试...接口测试用例设计思路 目的:测试接口的正确性稳定性;   原理:模拟客户端服务器发送请求报文,服务器接收请求报文后对相应的报文做处理并向客户端返回应答,客户端接收应答的过程;   重点:...3、POST比GET安全,因为数据在地址栏上不可见。   4、一般get请求用来获取数据post请求用来发送数据。   ...4、500 5开头的代表服务器有异常,500代表服务器内部异常,504代表服务器端超时,没返回结果。

64640

HTTP协议概述

案例2——POST请求 一般来说,网站登录验证的时候,需要提交用户名密码,这里包含了敏感信息,使用GET方式请求的话密码就会暴露在URL里面,造成密码泄露,所以这里最好以POST方式发送。...文件的上传,由于文件内容比较大,也会选用POST方式。比如百度账户登录,如下图所示: ?...POST 指定资源提交数据进行处理请求,数据被包含在请求体中。 PUT 从客户端服务器传送的数据取代指定的文档的内容。...,如200 则代表服务器正常响应,404 则代表页面未找到,500 则代表服务器内部发生错误。...500 服务器内部错误 服务器遇到错误,无法完成请求。 501 未实现 服务器不具备完成请求的功能。 502 错误网关 服务器作为网关或代理,从上游服务器收到无效响应。

1.3K30

Java面试——TCP与HTTP

【6】408 Request Timeout: 请求超时,客户端没有在服务器预备等待的时间内完成发送。 【7】500 Internal Server Error: 服务器发生不可预期的错误。...8)、ACK 确认已收到段 9)、PSH 请求在缓冲区尚未填满发送消息,注意TCP可以等待缓冲区填满之后再发送段,如果需要立即传送,应用程序必须利用push参数来通知协议。...【6】POST不限制提交的数据类型,所以POST可以提交文件到服务器数据包格式 == TCP头结构 十一、HTTP 有哪些 method ---- ★ GET:获取资源。...★ POST表单提交。 ★ HEAD:获取报头信息,HEAD 方法与 GET 方法类似,但并不会返回响应主体。...【3】算法:将文件内容通过此算法加密变成固定长度的值(值),这个过程可以使用密钥也可以不使用。这种变化是不可逆的,也就是说不能从值编程原文,因此变化通道常用语验证原文是否被篡改。

58440

HTTP报文详解

⑤是报文体,它将一个页面表单中的组件值通过param1=value1¶m2=value2的键值对形式编码成一个格式化串,它承载多个请求参数数据。...HTTP消息头用来准确描述正在获取的资源、服务器或者客户端的行为,定义了HTTP事务中的具体操作参数。...内部服务器错误 HTTP状态码由三个十进制数字组成,第一个十进制数字定义了状态码的类型,后两个数字没有分类的作用。...这个状态码允许客户端在获取资源在请求的元信息(请求头字段数据)中设置先决条件,以此避免该请求方法被应用到其希望的内容以外的资源上。...5.5、5XX服务器错误 500 Internal Server Error 通用错误消息,服务器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理。没有给出具体错误信息。

90410

接口-Requests-HTTP报文详解

⑤是报文体,它将一个页面表单中的组件值通过param1=value1¶m2=value2的键值对形式编码成一个格式化串,它承载多个请求参数数据。...HTTP消息头用来准确描述正在获取的资源、服务器或者客户端的行为,定义了HTTP事务中的具体操作参数。...内部服务器错误 HTTP状态码由三个十进制数字组成,第一个十进制数字定义了状态码的类型,后两个数字没有分类的作用。...这个状态码允许客户端在获取资源在请求的元信息(请求头字段数据)中设置先决条件,以此避免该请求方法被应用到其希望的内容以外的资源上。...(5)5XX服务器错误 500 Internal Server Error 通用错误消息,服务器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理。没有给出具体错误信息。

2.2K20

HTTP协议基础浅谈

浏览器作为HTTP客户端通过URLHTTP服务端即WEB服务器发送所有请求。Web服务器根据接收到的请求后,客户端发送响应信息。 ?...HTTP特点: 1、简单快速:客户服务器请求服务,只需传送请求方法路径。请求方法常用的有GET、HEAD、POST。 2、灵活:HTTP允许传输任意类型的数据对象。...POST:指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立/或已有资源的修改。...HEAD:类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头 PUT:从客户端服务器传送的数据取代指定的文档的内容。 DELETE:请求服务器删除指定的页面。...Unauthorized - 请求未经授权,这个状态代码必须WWW-Authenticate报头域一起使用 404 - 请求资源不存在,可能是输入了错误的URL 500 - 服务器内部发生了不可预期的错误

52920

标准API接口设计规范

例如:sign = hash(stringToSign) 发送请求:在发送API请求,在请求参数或请求头中增加sign参数。...在设计实现API接口,我们经常需要处理一些敏感数据,例如用户的登录密码、银行卡号、身份证号码等。...在设计实现API接口,我们经常需要处理一些敏感数据,例如用户的登录密码、银行卡号、转账金额身份证号码等。...敏感数据加密:对于特别敏感的信息,如登录密码,应在客户端侧进行加密处理,确保只有授权的服务器端能够解密并访问原始数据密码存储:对于密码等验证信息,不应以明文形式存储或传输。...统一的状态码:使用标准HTTP状态码来表示请求的结果,如200表示成功,400表示客户端错误500表示服务器错误等。

13310

前端基础——谈谈HTTP

•GET:特定资源发出请求(请求指定页面信息,并返回实体主体); •POST指定资源提交数据进行处理请求(提交表单、上传文件),又可能导致新的资源的建立或原有资源的修改; •HEAD:与服务器索与...get请求一致的相应,响应体不会返回,获取包含在小消息头中的原信息(与get请求类似,返回的响应中没有具体内容,用于获取报头); •put:指定资源位置上上传其最新内容(从客户端服务器传送的数据取代指定文档的内容...•1.GET提交的数据会放在URL之后,以?分割URL传输数据参数之间以&相连,如EditPosts.aspx?name=test1&id=123456。...a=1&b=2 •2.GET提交的数据大小有限制(因为浏览器对URL的长度有限制),而POST方法提交的数据没有限制; •3.GET方式需要使用Request.QueryString来取得变量的值,而POST...方式通过Request.Form来获取变量的值; •4.GET方式提交数据,会带来安全问题,比如一个登录页面,通过GET方式提交数据,用户名密码将出现在URL上,如果页面可以被缓存或者其他人可以访问这台机器

78230

【HTTP】267- HTTP 的15个常见知识点复习

5xx:服务器错误服务器未能实现合法的请求。 500服务器内部错误服务器遇到错误,无法完成请求。 501 (尚未实施) 服务器不具备完成请求的功能。...2 HEAD 类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头 3 POST 指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。...之间的区别) 400 客户端请求有语法错误,不能被服务器识别 403 服务器接收到请求,但是拒绝提供服务(认证失败) 404 请求资源不存在 500 服务器内部错误 响应头部 格式为: 响应头部...,基于函数验证信息的完整性。...服务器发送请求,服务器会根据这个请求的request header的一些参数来判断是否命中协商缓存。

51730
领券