【发布时间】:2016-04-22 12:05:57
【问题描述】:
我通常使用运行良好的 PHP SDK。但是,我需要通过 SDK 调用当前不可用的资源,该资源能够根据 https://developer.intuit.com/docs/api/accounting/invoice 提取 PDF 发票
因此,我需要通过基本 URL 进行连接。现在,这是我用来连接到我自己的公司帐户的应用程序。我通过 oAuth Playground 生成了所有凭据,并每 180 天手动更新一次。这是我尝试过的:
$url = "https://quickbooks.api.intuit.com/v3/company/123456/invoice/8661/pdf";
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, array("OAuth oauth_token:*******",
"oauth_nonce:******",
"oauth_consumer_key:*****",
"oauth_signature_method:HMAC-SHA1",
"oauth_timestamp:1461326602",
"oauth_version:1.0",
"oauth_signature:******"));
curl_setopt($curl, CURLOPT_VERBOSE, TRUE);
$result = curl_exec ($curl);
print $result;
这是回复:
< HTTP/1.1 400 Illegal character 0x20
< Server: nginx
< Date: Fri, 22 Apr 2016 11:58:59 GMT
< Content-Length: 0
< Connection: keep-alive
< Keep-Alive: timeout=5
我什至不知道我是否使用了所有正确的密钥和令牌。我使用的值与我成功用于 PHP SDK 工作的值相同。
如果有人能告诉我我做错了什么,我将不胜感激。谢谢。
【问题讨论】:
-
检查您的 /etc/nginx/nginx.conf 尝试修改 keep_alive 和 client_max_body_size 完成后重新启动 nginx。应该工作
标签: php curl quickbooks-online