我正在向自己发送POST请求:
requests.post("http://localhost:8000/api/", json=data, auth=('myuser', 'mypwd'))
我正在使用Django来接收POST请求。我想验证用户名和密码是否与我的密码匹配。
def myAPI(request)
if request.method == 'POST':
# obtain username and password here
如何获取纯文本的用户名和密码?我已经尝试过request.body.decode()
,request.POST.items()
,request.META
-只是找不到!我可以在data
中发送凭据,这很容易。另外,我可以使用API密钥代替用户名和密码,但是我也不知道如何访问它。
答案 0 :(得分:0)
这将为您工作:
req_header = request.META['HTTP_AUTHORIZATION']
credentials = auth_header.split(' ')[1]
base64_decoded_credentials = base64.b64decode(encoded_credentials)
decoded_utf_credentials = base64_decoded_credetials.decode("utf-8").split(':')
username = decoded_utf_credentials[0]
password = decoded_utf_credentials[1]