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

DHL电商API集成时PHP CURL请求返回空报405错误如何解决

排查解决建议

  • 修复请求方法错误(对应405报错核心原因)
    DHL ECommerce V2 版本的面单生成接口默认仅支持PUT请求方法,你当前代码使用的POST方法不被接口允许,替换请求方法配置即可:
    将原代码中curl_setopt($ch, CURLOPT_POST, 1);替换为:
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
  • 补全Basic认证配置
    响应头中返回WWW-Authenticate: Basic标识说明接口要求HTTP Basic认证,你代码中已经传入了$userId和$password参数,但没有配置到CURL中,添加以下配置:
curl_setopt($ch, CURLOPT_USERPWD, $userId . ":" . $password);
  • 优化请求头避免多余100 Continue响应
    你看到的HTTP/1.1 100 Continue是CURL发送大体积JSON时的正常前置响应,可在请求头中添加Expect:字段跳过该逻辑,避免多余响应头干扰结果解析,修改后的请求头数组如下:
$headers = array(
    'Accept: application/json',
    'Content-Type: application/json',
    'Expect:'
);
  • 修复代码冗余问题
    你函数内硬编码覆盖了传入的$url参数,调试阶段可保留该写法,上线前请根据环境切换对应正式/沙箱地址;同时核对官方文档的认证规则,不要同时使用Basic认证和请求体内的accessToken,避免出现认证冲突。
  • 修正请求体非法参数
    你请求体中包裹的width字段值为0.0,不符合物流接口的包裹参数要求,需修改为大于0的实际包裹宽度数值,避免后续接口返回参数校验错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 20:36:05