当get()或post()访问接口时
如果需要传入cookie,可以直接传入jar格式的cookie,也可以传入字典格式cookie
cookie:
cookie是存储与访问者计算机的变量。由浏览器负责存储在电脑本地。一般加密存储,但是由于存储在客户端,很容易被非法访问,不太安全。cookie中不适合存储敏感信息(例如密码)。
cookie中存储的信息是服务器决定的。cookie可以在响应的header中也可以在响应的正文中也可以在响应的url中。如果cookie在响应的header中可以直接使用cookies来接收,如果cookie在响应的正文中或者响应的url中,一般需要正则来提取cookie。
cookie有时效性,有效时间由服务器决定。cookie可以跨同一域名下网页使用,但是不能跨域名。
session():
session可以理解为一个无界面的微型的浏览器,可以自动管理cookie,当多个接口之间需要关联时,不需要进行cookie传参了。不是http协议中的session。
token:
服务端产生,在首次访问服务端时,由服务端返回给前端。前端可以在每次发起请求时
带上token证明请求的合法性。
token处理过程:
1、访问登录页面,接收响应的正文
2、从正文中利用正则将token提取出来。
3、将提取的token设置的请求的header中。
4、将header传参给请求的headers参数。
重定向(redirect):就是通过各种方法将网络请求重新定个方向转到其他位置。
状态码:
301:代表永久性重定向 302:代表暂时性重定向
在发起请求时,需要需要设置参数allow_redirects=False,禁止重定向。allow_redirects=True是启动重定向,会自动处理重定向后的地址,就无法获取重定向后的url,就无法下一步。
重定向后的url在响应的header中,需要使用headers接收响应的header,Location就重定向后url。Location作为键可以获取。
模拟ajax异步请求:
Ajax即 asynchronous JavaScript and XML :
是一种前后端交互方式,可以在无需加载整个页面的情况下,更新部分网页。可以减少前后端
数据量的交换,是网页实现异步更新。
如何判断是异步请求?
如果在发起的请求header中包含参数:"x-requested-with": "XMLHttpRequest"。
对于异步请求,header中必须设置参数"x-requested-with": "XMLHttpRequest",否则响应的json(),无法接收。