向超级沙箱发出请求 api 不改变任何东西

Making request to uber sandbox api not changing anything

我正在使用超级 api 向沙箱发出请求。具体来说,我从这里使用 node-uber 库:https://github.com/shernshiou/node-uber

当我尝试设置浪涌倍数时,使用以下代码片段:

 uber.products.setSurgeMultiplierByID('90475b1e-382e-437f-a50f-d9ac28c150c8', 2.2, function (err, res) {
  if (err) console.error("error" + err);
  else console.log("surge success" + res);
  });

然后我提出一个要求:

uber.requests.create({
  "start_latitude": lat,
  "start_longitude": longitude,
  }, function (err, res) {
    if (err) console.error(err);
    else console.log(res);
  });

我在响应中看到浪涌倍数仍然是 1.0

我做错了什么?而且,优步沙箱是否应该在我对沙箱的 PUT 请求和我呼叫优步的请求之间保持状态?它是如何专门为我保存那个状态的?它是基于我的授权令牌吗?

谢谢!

我不认为你做错了什么!沙盒模式应该跟踪 "state change"(请求状态、产品状态)。 API 通过将您的特定状态关联到以下任一状态来跟踪:

  • server_token:激增倍数和driver的可用性变化触发了/products端点。您可以使用 OAuth 或您的 server_token 来访问它。
  • OAuth access_token:请求状态更改触发 /requests 端点。此端点需要在身份验证后使用有效的 OAuth aacess_token 访问。

关于您报告的问题:经过一些调查,我创建了一个 issue report on GitHub。我正在为 node-uber 项目做贡献,今天我将提交错误修复。将相应地更新此答案。敬请期待!

更新: 我刚刚发布了 node-uber 的更新。使用 v0.9.6,您的问题应该得到解决。否则请告诉我!使用上面的代码,您需要预期从 requests.create 方法返回 HTTP 409 错误(因为 surge_multiplier > 2.0)。