Python POST请求返回401

2024-05-14 18:20:01 发布

您现在位置:Python中文网/ 问答频道 /正文

发送post请求时,返回401错误。设置中是否存在可能导致错误的内容。代码如下:

import requests


>>>url= 'https://us-street.api.smartystreets.com/street-address'
>>>payload = {'auth-id':'xxxxxx','auth-token':'xxxxx'}
>>>body = [{"street":"1 Santa Claus","city":"North Pole","state":"AK","candidates":10},{"addressee":"Apple Inc","street":"1 infinite loop","city":"cupertino","state":"CA","zipcode":"95014","candidates":10}]
>>>headers = {'Content-Type':'application/json; charset=utf-8', 'Host':'us-street.api.smartystreets.com'}
>>>r = request.post(url, data=payload, json=body, headers=headers)
>>>r.status_code
401
>>>r.url
https://us-street.api.smartystreets.com/street-address

任何帮助都将不胜感激。 指向api文档的链接:https://smartystreets.com/docs/cloud/us-street-api


Tags: httpscomauthapiurlstreetcityaddress
1条回答
网友
1楼 · 发布于 2024-05-14 18:20:01

根据文档,您的身份验证凭据应该位于URL的查询字符串中,而不是正文中。所以用params=payload代替data=payload

基本上,由于API没有在正确的位置找到您的身份验证凭据,因此它假定您未进行身份验证/登录,因此会出现401状态代码

相关问题 更多 >

    热门问题