博世物联网套件的错误 运行 Vorto 仪表板

Error running Vorto Dashboard for Bosch iot suite

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

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

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

No credentials given, can not get things

Could not get the token with given credentials. - StatusCodeError: 400 - {"error":"unauthorized_client","error_description":"INVALID_CREDENTIALS: Invalid client credentials"}

TL;DR

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

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


上下文

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

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

引用:

While the dependencies are being installed, create the config.json file and insert client_id, secret and scope from your Already created OAuth2 Client. The content of the file has to look like this:

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

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

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

You can provide your OAuth2 credentials through environment variables. The three environment variables you have to provide are:

BOSCH_CLIENT_ID

BOSCH_CLIENT_SECRET

BOSCH_SCOPE

[...]

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

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

详解

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

如果这是真的,那么教程 可能应该用 README.md.

的最新说明进行修改

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

由于上传状态正在进行中,我们暂时禁用了 config.json 方法并从文档中删除了现有参考。显然,您找到的 tutorial 中的引用被遗漏了,很抱歉!

今天我部署了一个新版本0.5.0 of the vorto-dashboard which should work as usual. You are now able to work with either process.env.[...] varibales or a config.json file. Thank you Mena为了快速响应!

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