我想使用基本授权获得授权令牌。我使用用户名和密码发送了发布请求,但要获取令牌,请求中必须包含原始数据grant_type=client_credentials&scope=Dashboard
的正文数据。但我无法使用python发送发布请求中的grant_type=client_credentials&scope=Dashboard
正文数据。
@task(1)
def login(self):
self.client.post("/OAuth/Token/", {'Username':'abc', 'Password':'12345'})
答案 0 :(得分:0)
请尝试以下操作:
在URL中,添加Grant类型和范围,如下所示:
/OAuth/Token?grant_type=client_credentials&scope=Dashboard
它看起来像这样
self.client.post("/OAuth/Token?grant_type=client_credentials&scope=Dashboard", {'Username':'abc', 'Password':'12345'})
答案 1 :(得分:0)
self.client.post()
返回一个Response对象。您可以在https://requests.readthedocs.io/en/latest/api/#requests.Response
要读出响应中的内容,您可以尝试类似
@task(1)
def login(self):
res = self.client.post("/OAuth/Token/", {'Username':'abc', 'Password':'12345'})
token = res.json()['token']
这尝试将Response主体作为json处理并提取令牌字段。如果这不起作用,请提供您在响应中看到的详细信息。