401的错误分析
- 编辑:大众自然网 -401的错误分析
正在接口的测试中,每每会碰到客户端向供职端发送一个哀告,供职端返回401的舛错,那么此日本作品就来解释正在接口测试中怎么阐明以及办理该题目。
咱们晓畅正在HTTP返回的状况码中,401舛错显露的是被哀告的页面须要用户名和暗号。401的舛错周密的可能描摹为:客户端发送哀告抖到供职端,页面须要验证供职端会返回401的舛错,睹如下的舛错音信:
Headers
Content-Type: application/json Basic realm="Authentication Required"Content-Length: 37Server: Werkzeug/0.11.13 Python/2.7.12Date: Wed, 14 Mar 2018 14:57:24 GMT
{ "error": "Unauthorized access"}
根据舛错的音信可能获取到,发送的哀告须要有通过HTTP的认证的认证音信,借使正在浏览器中探访,会直接弹出须要输入用户名和暗号的弹出框,睹截图:
那么正在HTTP的认证中,每每会被操纵到认证办法判袂是BASIC认证和DIGEST认证,咱们简直来看BASIC的认证办法是一种风行,行业模范的身份验证办法,是正在HTTP1.0中指定。闭键是指示用用户ID和暗号操纵Base64编码模范举办编码,并通过HTTP举办传属,惟有当用户ID和暗号有用时,供职器才应允用户探访。
正在咱们的案例中,操纵的认证办法是BASIC的认证办法,那么正在客户端向供职端发送哀告的时期,带上用户音信,再次哀告可能告捷。正在postman中的Basic auth指定用户名和暗号,睹哀告告捷的音信:
Headers
Content-Type: application/jsonContent-Length: 308Server: Werkzeug/0.11.13 Python/2.7.12Date: Wed, 14 Mar 2018 15:09:33 GMT
{ "datas":
[
{
"check in": "2018-03-08 08:20:10",
"check out": "2018-03-09 14:00:00",
"identity card": "23012919950425723X",
"phone": "13484545190",
"room number": "1104",
"userid": 1,
"username": "李四",
"vpl": "京AJ3585"
}
]
}
当然咱们也可能操纵requests轻松的办理这局限,睹达成的代码:
#!/usr/bin/env python
#-*-coding:utf-8-*-
import requests
r=requests.get(
,
auth=(wuya,admin))
print r.text
或者直接指定HTTPBasic,睹删改后的代码:
#!/usr/bin/env python
#-*-coding:utf-8-*-
import requests
from requests.auth import HTTPBasicAuth
r=requests.get(
,
auth=HTTPBasicAuth(wuya,admin))
print r.text
401的错误分析