Uber API端点不与真实服务器域一起使用,但与沙箱配合良好

时间:2015-08-17 11:03:55

标签: ios https uber-api

我一直在测试Uber API一个月,最近我看到了一些不稳定的行为。

在我的代码中,Uber端点返回了一些异常响应。现在我在下面粘贴我的代码的屏幕截图:

你可以看到我有一个全局字符串类型变量“baseURL”,我一直在真实服务器和沙箱之间切换它,如下所示: “https://api.uber.com/v1”和“https://sandbox-api.uber.com/v1

但是根据我的测试结果,我可以说沙盒中的大多数API工作得非常好,但是当我切换到真正的服务器域时,我测试过的所有API根本不起作用。

更新 对于沙箱环境,/v1/estimates/time也不起作用。它将返回401。 我的请求网址如下:https://sandbox-api.uber.com/v1/estimates/time?server_token=myToken&start_latitude=39.914097&start_longitude=116.458539

1)POST /v1/request/estimate

我确信“POST”是Uber API doc建议的内容(https://developer.uber.com/v1/endpoints/)。但是当我切换到真实服务器时拍摄了这个屏幕截图(沙盒对于相同的代码没有任何问题)。

它返回:"Method not supported for this endpoint." / "method_not_allowed" 405 code

enter image description here

2)POST /v1/requests

与真实服务器相同的行为(沙箱效果很好),如下所示,它还返回"invalid OAuth 2.0 credentials provided." / "unauthorized" 405 code。但我确信我可以使用相同的凭据在沙盒中发出请求。

enter image description here

3)GET /v1/estimates/time

即使是这个API,它也不需要访问令牌,但仍然使用"No authentication provided."返回"unauthorized" / 401 code。 请注意,它适用于沙箱但对真实服务器失败。

enter image description here

请帮助,非常感谢!

1 个答案:

答案 0 :(得分:1)

每个人都可以在沙盒环境中使用Uber API Request端点,但在生产中使用它需要白名单。您可以在优步支持页面上请求将您的应用列入白名单:https://developer.uber.com/support/

对于/ v1 / estimate / time端点,生产中需要服务器令牌或访问令牌,但不需要白名单。