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

Quickbooks 已认证PHP CURL GET请求返回400错误排查求助

导致本次调用返回400错误的核心配置错误如下:

  • 错误将请求行放入HTTP请求头数组:"GET " . $query . " HTTP/2"是HTTP请求的首行内容,并非请求头参数,cURL会根据传入的完整请求地址、默认请求方法自动生成请求行,手动将其加入请求头数组会导致请求格式异常,触发服务端解析错误。
  • 存在两个无效自定义请求头:Production Base URL、Sandbox Base URL并非QuickBooks API要求的标准请求头,服务端收到无法识别的非规范请求头会直接返回400错误,这两个参数仅为QuickBooks开发者平台的环境说明字段,不需要随请求发送。
  • 多余的Host头配置:cURL会自动从完整请求URL中解析生成Host头,手动配置反而可能出现拼写、匹配错误,建议删除。

修正后的代码示例:

// 已省略companyID、access_token、base变量的赋值逻辑
$url = "https://{$base}/v3/company/{$companyID}/companyinfo/{$companyID}";
$headers = array(
    "Accept: application/json",
    "Authorization: Bearer " . $access_tokens["access"]
);

$curl = curl_init($url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLINFO_HEADER_OUT, true);
curl_setopt($curl, CURLOPT_HEADER, true);
// 显式指定GET请求方法,避免cURL默认逻辑异常
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "GET");
$output = curl_exec($curl);

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 22:00:01