优步价格/时间估算API现在返回401未经授权的

时间:2018-04-12 01:55:07

标签: javascript ionic-framework uber-api

我一直在使用我为Uber API时间和价格估算积分的离子应用程序。我已经在uber开发者工作室注册了我的应用程序,并且包含了server_token 请求如下所示。大约一个月或两个月前,我的应用程序正常运行,但现在我的401未经授权而且#34;未提供身份验证。"错误。当我采取相同的 带有服务器令牌的URL并复制并粘贴到新的浏览器窗口中我可以通过估算获得响应。我错过了什么吗?这些对我来说比较早,我没有记录用户 进入优步只是想得到一般的价格/时间估计。我没有为应用程序设置任何通用范围,因为我认为只有OAuth需要这些范围。我是否还需要为估算API调用请求这些?

https://api.uber.com/v1/estimates/price?start_latitude=%2033.8075191&start_longitude=-84.3750251&end_latitude=33.8092502&end_longitude=%20-84.36099030000003&server_token=<SERVER_TOKEN>

以下是我用来调用API网址的代码块

    var uberPricePromise = $http.get(createUberUrlForMetric('price'))
      .then(function (response) {

        var uberPrices = response;

        // format price from Uber for the view

      }, function (error) {
        console.log(error);
      });


    function createUberUrlForMetric(metric) {
      return 'https://api.uber.com/v1.2/estimates/' + metric + '?start_latitude= ' + PlacesService.currentLocation.lat +
      '&start_longitude=' + PlacesService.currentLocation.lng +
      '&end_latitude=' + $scope.place.geometry.location.lat() +
      '&end_longitude= ' + $scope.place.geometry.location.lng() +
      '&server_token=<SERVER_TOKEN>;
    }

1 个答案:

答案 0 :(得分:0)

Uber API版本1.0已弃用于估算端点,您可以使用v1.2而不是这里是获取估算值的示例代码段 更多信息可以在here

找到

估计端点可以与server_token或承载令牌一起使用

使用server_token

curl -H 'Authorization: Token <SERVER_TOKEN>' \
     -H 'Accept-Language: en_US' \
     -H 'Content-Type: application/json' \
     'https://api.uber.com/v1.2/estimates/price?start_latitude=37.7752315&start_longitude=-122.418075&end_latitude=37.7752415&end_longitude=-122.518075'

使用用户access token

curl -H 'Authorization: Bearer <USER_ACCESS_TOKEN>' \
     -H 'Accept-Language: en_US' \
     -H 'Content-Type: application/json' \
     'https://api.uber.com/v1.2/estimates/price?start_latitude=37.7752315&start_longitude=-122.418075&end_latitude=37.7752415&end_longitude=-122.518075'

因此,为了让代码正常工作,您可能需要进行的更改是在Request Header中传递Server Token而不是HTTP GET param。