我试图弄清楚为什么调用网络服务并不会返回我需要的结果。
使用CURL for Linux with
curl -i -H "Accept: application/json" "https://www.thisapi.com/stuff/?status=something" > myfile.txt
我得到了正确的结果,一个对象开始:{" object_count":4,...
将PHP与libcurl和
一起使用$curl = curl_init();
$hdr[] = 'Content-type: application/json';
$hdr[] = 'Accept: application/json';
curl_setopt($curl, CURLOPT_HTTPHEADER, $hdr);
$url = 'https://www.thisapi.com/stuff/?status=something';
curl_setopt($curl, CURLOPT_URL, $url);
//return the data
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$results = curl_exec($curl);
忽略网址变量" status"我得到{" object_count":8 ...
任何人都可以帮我解决这两个请求不相同的方式,以及为什么他们没有返回相同的结果?
答案 0 :(得分:0)
在第二种情况下,您有一个额外的标题 - Content-type: application/json
。也许这会导致API端点以不同的方式响应,忽略URL中的参数,因为它期望JSON格式的东西。