尝试测试Uber Rush API(来自localhost和linux服务器)。
调用令牌工作 - 我得到令牌 试图实现sanbox示例:
curl -X "PUT /v1/sandbox/deliveries/{delivery_id}" \
-H "Authorization: Bearer <OAUTH TOKEN>" \
-d "{\"status\":\"en_route_to_pickup\"}"
使用网址https://sandbox-api.uber.com/
我用file_get_contents(在PHP中)尝试了相同的请求
所以,我总是得到错误&#34; 405 Method Not Allowed&#34;
{"message":"Method not supported for this endpoint.","code":"method_not_allowed"}
要从此沙箱示例https://developer.uber.com/docs/rush/sandbox访问方法,我需要做些什么?
Corrent语法
curl -X "PUT" -H "Authorization: Bearer <TOKEN>" -H "Content-Type: application/json" -d "{\"status\":\"en_route_to_pickup\"}" https://sandbox-api.uber.com/v1/sandbox/deliveries/DELIVERY_ID
答案 0 :(得分:0)
编辑:已更新以反映您问题中的两个问题......
您的请求不匹配,卷曲语法不正确。
首先,错误地指定了您的CURL请求。它应该是:
if(f < 0 ) return 0;
此外,您的curl命令正在尝试向uber sandbox PUT API发出PUT请求。但是,您的PHP代码没有正确设置上下文,因此可能发出GET请求。我怀疑服务器因此拒绝作为GET的请求,因为不允许进行这种操作。
要解决此问题,请参阅Bad request using file_get_contents for PUT request in PHP。这应该为您提供一个示例,说明如何使用curl -X "PUT" -H "Authorization: Bearer <OAUTH TOKEN>" -d "{\"status\":\"en_route_to_pickup\"}" https://sandbox-api.uber.com/v1/sandbox/deliveries/{delivery_id}
传递必要的上下文来发出PUT请求。