如何获得优步乘车价格

How to get uber ride price

我编辑了整个主题,因为我对整个主题进行了很好的阅读 API,现在我遇到了另一个问题......我会尽量在这里留下尽可能多的细节。

你给出的错误是 401 of uber api,但是,我做的一切都是正确的......我的 INDEX.html 看起来像这样:

index.html

<html>
<head>
    <title>Party Invitation</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <link href='http://fonts.googleapis.com/css?family=Source+Sans+Pro:200,300,400,600' rel='stylesheet' type='text/css'>
    <link rel="stylesheet" href="css/normalize.css">
    <link rel="stylesheet" href="css/style.css">
</head>
<body>
    <section>
        <h1>Party</h1>
        <div class="info-container">
            <span class="info-header">When</span>
            <span class="info when">September 18, 2014 at 6:00pm</span>
        </div>
        <div class="info-container">
            <span class="info-header">Where</span>
            <span class="info where">Thinkful HQ</span>
        </div>
        <img class="map" src="http://maps.googleapis.com/maps/api/staticmap?center=40.7248,-73.99597&zoom=17&format=png&sensor=false&size=280x280&maptype=roadmap&style=element:geometry.fill|color:0xf4f4f4&markers=color:red|40.7248,-73.99597&scale=2" alt="">
        <div class="button">
            <p id="time">ESTIMATING TIME</p>
        </div>
    </section>

<script src="js/jquery-2.1.1.min.js"></script>
<script src="js/uber.js"></script>
</body>

然后我的uber.js是这样的:

uber.js

    // Uber API Constants
var uberClientId = "RxGbzH***************"
    , uberServerToken = "h_hqd3L4***************";

// Create variables to store latitude and longitude
var userLatitude
    , userLongitude
  , partyLatitude = 19.3256725
  , partyLongitude = -43.1579731;



navigator.geolocation.watchPosition(function(position) {
    // Update latitude and longitude
    userLatitude = position.coords.latitude;
    userLongitude = position.coords.longitude;

  // Query Uber API if needed
    getEstimatesForUserLocation(userLatitude, userLongitude);
});

function getEstimatesForUserLocation(latitude,longitude) {
  $.ajax({
    url: "https://api.uber.com/v1/estimates/price",
    headers: {
        Authorization: "KA.ey**********************************************************************************************************************************" + uberServerToken
    },
    data: { 
      start_latitude: latitude,
      start_longitude: longitude,
      end_latitude: partyLatitude,
      end_longitude: partyLongitude
    },
    success: function(result) {
      console.log(result);
    }
  });
}

And this is the error that is appearing

And my uber control panel is like this

谁能告诉我为什么他们在控制台上出现这两个错误?我不知道该怎么办

=\

如我所见 - 您的应用程序 set-up 不正确。您没有重定向 URL、隐私政策,因为您正在从 JS - Origin URL:

进行 API 调用

所以添加如下内容:

重定向 URL:http://localhost:7000/redirect
隐私政策:http://localhost:7000/privacy
来源 URL: http://localhost:7000

我不确定您从哪里获得访问令牌 - 因为您没有正确设置您的应用程序 - 但即便如此,这也不会起作用,因为您的 header 无效。您缺少 access_token 的令牌类型 "Bearer"。所以,在这种情况下,您的代码应该是这样的:

headers: {
    Authorization: "Bearer KA.ey**********************************************************************************************************************************"
    }

如果您想使用服务器令牌:

headers: {
    Authorization: "Token uberServerToken"
    }

请阅读我们的 documentation 了解更多信息。