Python调用leadstar.pl API授权返回401未授权错误求解
leadstar.pl API 调用返回401未授权的Python实现方案
返回401的核心原因是你的请求格式和官方要求不匹配:
- PHP cURL给
CURLOPT_POSTFIELDS传入普通数组时,参数会以application/x-www-form-urlencoded格式放在POST请求体中提交。你用params传参会把授权参数拼到URL查询串里,服务端读不到请求体里的凭证,直接判定未授权。 - 你漏传了官方示例里必填的
product_id参数,参数缺失同样会触发授权拦截。 - 非必要不要加
verify=False,这个配置会跳过SSL证书校验,存在安全风险。
httpx 版本正确实现
import httpx # 对应PHP CURLOPT_POSTFIELDS中的表单参数 form_data = { "partner_id": 替换为你的实际partner_id, # 该字段为数字类型直接传整型即可,是字符串就加引号 "api_key": "替换为你的实际api_key", "product_id": 2 } resp = httpx.post( url="https://leadstar.pl/api/programs", data=form_data # 用data参数传递表单格式POST请求体,不要用params ) print(resp.status_code) print(resp.text) # 需要解析JSON结果直接调用内置方法即可 # result = resp.json()
requests 版本正确实现
import requests form_data = { "partner_id": 替换为你的实际partner_id, "api_key": "替换为你的实际api_key", "product_id": 2 } resp = requests.post( url="https://leadstar.pl/api/programs", data=form_data ) print(resp.status_code) print(resp.text) # result = resp.json()
替换正确参数后仍返回401的话,优先核对两点:
- 检查
partner_id、api_key是否复制正确,前后不要带多余空格、换行符- 确认你的账号有对应
product_id的访问权限,没有被服务端限制接口调用范围
内容的提问来源于stack exchange,提问作者Michal
相关产品推荐
相关产品推荐

