Python3 来自 API 的请求 return 未找到

Python3 Request from API return Not Found

我试图从 Python 上的某个资源管理器中的某个地址获取余额,但我收到 404 错误,我认为这与列表有关。

这是我的代码:

import urllib.request, json, requests

listAddress = [
    "HiaRFZkLiWaUuu2x3Dxg2rAMu6BTrzoitf"
]
explorerUrl = 'http://explorer.htmlcoin.com'
urlBase = '/api/tokens/Hj5mkJmDWKq8HAh9qDYLnbohZHw6kaUG3A/addresses/'
balance = '/balance'


for address in listAddress:
    urlGamb = explorerUrl+urlBase+address+balance
    json_data = urlGamb
    r = requests.post(json_data)
    r.status_code
    r.json()
    print(r.json())

问题是returns这个错误:

python3 newwork.py 
{'status': 404, 'url': '/api/tokens/Hj5mkJmDWKq8HAh9qDYLnbohZHw6kaUG3A/addresses/HiaRFZkLiWaUuu2x3Dxg2rAMu6BTrzoitf/balance', 'error': 'Not found'}

那么,我做错了什么?

小建议:

urlGamb = f"{explorerUrl}{urlBase}{address}{balance}"

我不知道 API,你没有提供 link,但是 urlGamb 的值是 'http://explorer.htmlcoin.com/api/tokens/Hj5mkJmDWKq8HAh9qDYLnbohZHw6kaUG3A/addresses/HiaRFZkLiWaUuu2x3Dxg2rAMu6BTrzoitf/balance' 而不是 JSON。分配给 json_data 似乎是一个概念错误,因为 URL 字符串不是 json。如果 post 需要 JSON 有效负载,那么文档应该会告诉您如何构造它。

post 是否应该改为 get 请求?这是有道理的,因为根据 REST 标准,post 用于更改服务器上的状态,而您只是在进行查询。