You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AISWEI Solar API getPlantList接口调用无响应问题求助

修复AISWEI Solar API getPlantList接口400错误的排查方案

以下是针对你遇到的400错误的具体排查和修复方向:

  • 核对接口路径准确性
    你代码中使用的路径是/planlist,但目标接口名为getPlantList,请确认API手册中实际接口路径是否为/getPlantList。虽然返回400而非404,但不排除文档标注与实际部署路径存在差异。

  • 补充APP Key参数
    你提到拥有9位数字加字母组成的APP Key,但当前代码仅传入了token参数。查看API手册的参数要求,确认是否需要在请求参数中添加appKey(或对应参数名),示例如下:

    params = {
        'token': token,
        'appKey': '你的APP Key',  # 新增APP Key参数
        'page': page,
        'size': size
    }
    
  • 修正参数数据类型
    代码里将page和size转换为字符串,多数API要求这两个参数为整数类型,直接传入int值即可,无需类型转换:

    params = {
        'token': token,
        'page': page,  # 直接传入整数
        'size': size   # 直接传入整数
    }
    
  • 确认请求方法是否匹配
    部分光伏设备API的列表接口可能要求使用POST请求而非GET。检查API手册中的请求方式,如果为POST,需调整代码:

    # 若参数需放在JSON请求体中
    response = requests.post(url, json=params, verify=False)
    # 若参数需用form-data格式传递
    response = requests.post(url, data=params, verify=False)
    
  • 检查请求头要求
    有些API会强制要求特定请求头,比如Content-Type: application/json,或需要基于APP Key和token生成签名头。查看API手册的鉴权章节,确认是否需要添加额外请求头,示例:

    headers = {
        'Content-Type': 'application/json',
        # 若有签名要求,在此添加签名头,例如'Sign': '生成的签名字符串'
    }
    response = requests.get(url, params=params, headers=headers, verify=False)
    
  • 打印响应错误详情
    400错误通常会返回具体错误描述,建议添加代码打印响应文本,明确服务器拒绝请求的原因:

    else:
        print(f"请求失败,状态码: {response.status_code}")
        print("错误详情:", response.text)  # 新增打印响应内容
        return None
    

修改后的示例代码(假设需要APP Key、整数参数、GET请求):

import requests

def get_plant_list(token, app_key, page=1, size=20):
    url = 'https://api.general.aisweicloud.com/getPlantList'  # 修正接口路径
    params = {
        'token': token,
        'appKey': app_key,
        'page': page,
        'size': size
    }
    headers = {
        'Content-Type': 'application/x-www-form-urlencoded'  # 根据手册调整请求头
    }

    try:
        response = requests.get(url, params=params, headers=headers, verify=False)

        if response.status_code == 200:
            return response.json()
        else:
            print(f"请求失败,状态码: {response.status_code}")
            print("错误详情:", response.text)
            return None

    except requests.exceptions.RequestException as e:
        print("请求发生异常:", e)
        return None

token = 'XXXXXXXXXXXXX'
app_key = '你的9位数字加字母的APP Key'

plant_list = get_plant_list(token, app_key)

if plant_list:
    print(plant_list)

内容的提问来源于stack exchange,提问作者kyleprr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 02:12:21