json - Python 请求:- simplejson.errors.JSONDecodeError:预期值:第 1 行第 1 列(字符 0)
问题描述
我正在尝试使用 pythonrequests
库获取一些订单详细信息。该 API 与邮递员一起工作正常,但是当我尝试使用 python 运行它时,会发生以下错误。
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
我正在使用以下 python 代码来调用屏幕截图中的 API:
import requests
url = "https://xxxxxxxxxxxxxx/purchases"
header = {"Content-Type":"application/json", "Authorization":'token {}'.format('eyXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX')}
data = {"from_date":"2021-06-15T07:19:32", "to_date":"2021-09-16 00:01:09"}
response = requests.get(url, params=data, headers=header)
print(response.json())
我得到的结果是:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python3/dist-packages/requests/models.py", line 897, in json
return complexjson.loads(self.text, **kwargs)
File "/usr/lib/python3/dist-packages/simplejson/__init__.py", line 518, in loads
return _default_decoder.decode(s)
File "/usr/lib/python3/dist-packages/simplejson/decoder.py", line 370, in decode
obj, end = self.raw_decode(s)
File "/usr/lib/python3/dist-packages/simplejson/decoder.py", line 400, in raw_decode
return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
解决方案
问题是我需要"Bearer "
在标头部分的 Autorization 参数中传递的令牌前面添加一个文本,如下所示,因为该令牌将作为承载令牌传递:
header = {"Content-Type":"application/json", "Authorization":'Bearer eyXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'}
推荐阅读
- graphql - 如何在 Gatsbyjs 中正确设置和查询 siteMetadata?
- apache - 让我们在 AWS Lightsail 的 bitnami.conf 中加密 SSL 设置
- mongoose - Mongoose:如何以编程方式重新定义模式?
- javascript - 如何以编程方式从 jQuery 布局中的 Resizer 栏触发调整大小?
- php - 当我登录会话时只读取 php 中的一个字符
- java - 无法将应用程序日志保存到文件
- c++ - '&' 在 "std::vector 中代表什么
& 溪流;” - javascript - 如何从函数返回字符串列表?
- openj9 - OpenJ9 性能不是很好?
- javascript - 修改数据表中的特定 td