javascript - 调用 RESTful api 时,将 api token 放在 http 请求 header 中是否安全?例如: Uber reminder api

标签 javascript rest uber-api

您可以使用优步 RESTful api 发送提醒,例如“在本地 AMC 看电影”,给优步应用程序用户。 api文档为here .

POST/v1/提醒

但是你必须在 http 请求 header 中放置一个 token (他们称之为服务器 token )以进行身份​​验证。文件是here .

curl -H 'Authorization: Token YOUR_SERVER_TOKEN' \
'https://api.uber.com/v1/products?latitude=37.7759792&longitude=-122.41823'

用户可以使用 chrome 开发工具查看 token 。我的问题是:

将app token放在前端发送的http请求头中安全吗?为什么? 我应该在服务器上还是在浏览器中使用 Javascript 调用提醒?

最佳答案

虽然可以在 Developer Dashboard 中删除和生成新的服务器 token (下面的屏幕截图),你不应该让你的服务器 token 公开可用(例如通过前端的 JS 变量)。使用此 token ,其他人可以创建、检索、更新和删除提醒。

enter image description here

此外,服务器 token 可用于检索估计值(pricetime)和 Uber products代表你。这可能听起来微不足道,但可能会影响您的应用程序的 rate limiting (每小时 2000 个请求)。如果服务器 token 落入坏人之手,它可能会有效地阻止您的应用程序定期与 Uber API 通信。

我强烈建议在服务器端实现它。

关于javascript - 调用 RESTful api 时,将 api token 放在 http 请求 header 中是否安全?例如: Uber reminder api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39908345/

相关文章:

Javascript 秒表不是从零开始的

android - 优步请求错误

python - 如何使用 Uber API 的个人访问 token ? (获取 'No authentication provided.' )

javascript - JavaScript 中的逻辑运算符评估

javascript - jquery ui 主题切换器

WCF REST 列出传入请求的 HTTP header

asp.net-mvc - 向 Flash、JavaScript 等发送自定义 HTTP 错误信息

ios - 架构 armv7 : "_OBJC_CLASS_$_UBSDKConfiguration", 的 undefined symbol 引用自

javascript - 连接和断开属性

node.js - 当数据量很大时,Angular 2 http get 请求被调用两次