如何生成授权请求标头?

时间:2018-07-25 00:33:48

标签: python api flask header postman

如何生成授权请求标头?

我已经读过authorization request header,并在base 64中使用用户名和密码生成了一个,但是当我在请求标头上传递它时,它就不起作用了("error": "invalid_client)。

使用邮递员发出请求,一切正常:

POST /oauth/token
content-type: application/x-www-form-urlencoded
authorization: Basic M1g4Vlk2QllHOFFJTDA3amt1cWpsUnNKOmhoWkNlSEg0SzFuVVJ2VTZmNUs5MmFiTlNSN3h3ZlBCYVN6OXI1WG1pcDNZOGJCbA==
user-agent: PostmanRuntime/7.1.5
accept: */*
host: 127.0.0.1:5000
accept-encoding: gzip, deflate
content-length: 97

肥胖¹:api使用密码授予类型并返回承载令牌

obs ²:当我使用用户名和密码(base64.b64encode(b''))生成授权请求标头时,输出长度为20个字符

2 个答案:

答案 0 :(得分:1)

您如何使用python发送此发帖请求?

为什么不使用requests?您甚至不需要关心它:

import requests

requests.post(url, data=data, auth=(username, passwd))

答案 1 :(得分:1)

在Flask Authlib中,您可以定义三种Auth方法类型:client_secret_basic,client_secret_post和none,这些类型指示参数以及您需要如何在标头中传递它们。这是指RFC6749规范。