1

我正在尝试在 Raspberry Pi 上运行 Vorto 仪表板以可视化我的博世物联网“事物”数据。

为了运行 Vorto 仪表板,我安装了 npm 和 nodejs 并创建了 config.json 文件。

每当我尝试使用命令运行仪表板时,我都会收到以下错误:sudo vorto-dashboard config.json知道我已经添加了 OAuth2 客户端凭据。

没有给出凭据,拿不到东西

无法使用给定凭据获取令牌。- StatusCodeError: 400 - {"error":"unauthorized_client","error_description":"INVALID_CREDENTIALS: 无效的客户端凭据"}

4

2 回答 2

1

我目前正在博世作为实习生参与 Vorto 项目。由于 Vorto-Dashboard 的变化,我们将以前的仪表板的功能与另一个并存的更新 UI 结合并合并,提供了可视化现有设备的高级方法。

由于上传状态正在进行中,我们暂时禁用了该config.json方法并从文档中删除了现有参考。显然,您找到的教程中的参考被省略了,对不起!

今天,我部署了vorto-dashboard的新版本0.5.0 ,它应该可以正常工作。您现在可以使用process.env.[...]变量或config.json文件。感谢梅纳的快速回复!

如果您需要任何进一步的帮助或有其他反馈,请随时告诉我。

于 2019-10-25T09:38:20.570 回答
0

TL;博士

要解决您的问题,请将您的 OAUth 凭据存储为环境变量。

例如在 debianexport BOSCH_CLIENT_ID=...等,然后在同一个终端中启动仪表板。


语境

我正要问同样的问题,因为无论我如何引用config.json文件(相对路径、绝对路径、无引用等),我都会收到相同的错误消息。

为澄清起见,指向config.json用于存储 OAuth 凭据的资源的教程在此处

报价:

在安装依赖项时,从您已创建的 OAuth2 客户端创建config.json文件和 insert 、 secret 和 scope。client_id文件的内容必须如下所示:

{ "client_id": "<YOUR_CLIENT_ID>", "client_secret": "<YOUR_CLIENT_SECRET", "scope": "<YOUR_SCOPE>", "intervalMS": 10000 }

对文件的引用config.json已从的模块中的README.md资源中删除。vorto-dashboardvorto-examples

最新的README.md建议通过环境变量提供 OAuth 凭据:

您可以通过环境变量提供您的 OAuth2 凭据。您必须提供的三个环境变量是:

BOSCH_CLIENT_ID

BOSCH_CLIENT_SECRET

BOSCH_SCOPE

[...]

查看源代码,我只能在package_for_deployment.jsonconfig.jsonstart脚本条目中找到对 a 的显式引用(例如,源代码周围的任何内容似乎都在消耗)。argv[2]

负责处理 OAuth 凭据的AuthToken.js资源似乎只通过process.env.[...]引用来引用环境变量。

细化

这只是在撰写本文时的猜测,但我怀疑放弃该方法的原因config.json可能与加强安全性有关,即不将 OAuth 凭据永久存储在文件中。

如果这是真的,那么教程页面可能应该使用README.md中的最新说明进行修改。

于 2019-10-23T13:19:46.300 回答