我正在使用 uber 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
我做错了什么?而且, super 沙箱是否应该在我对沙箱的 PUT 请求和我调用 super 的请求之间保持状态?它如何专门为我保存该状态?它基于我的身份验证 token 吗?
谢谢!
最佳答案
我不认为你做错了什么!沙盒模式应该跟踪“状态变化”(请求状态、产品状态)。 API 通过将您的特定状态关联到以下任一状态来跟踪该情况:
- server_token:激增乘数和驾驶员可用性变化会触发
/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)。
关于node.js - 向 uber sandbox api 发出请求不会改变任何内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37428599/