cURL工作正常:
curl -H "X-ApiToken: myapitoken" https://api.fulcrumapp.com/api/v2/records
Guzzle没有:
$client = new Client();
$request = $client->createRequest('GET', "https://api.fulcrumapp.com/api/v2/records");
$request->setHeader("X-ApiToken:" , "myapitoken");
$response = $client->send($request);
这会回复401错误:未经授权。这是我第一次使用Guzzle但在我的搜索中我没有看到这个错误。看起来像一个简单的请求,所以我不确定它为什么会失败。
谢谢!
答案 0 :(得分:3)
我必须添加另一个标头来明确告诉它处理json
$request->setHeader("Accept" , "application/json");
感谢您指出401是错误的错误 - 真正的错误是406,这让我了解了如何实际修复它。
答案 1 :(得分:0)
setHeader
方法采用不带冒号的标题名称。将"X-ApiToken:"
更改为"X-ApiToken"
。