首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Bluemix地理空间服务连接到Watson IoT平台时未经授权的错误

将Bluemix地理空间服务连接到Watson IoT平台时未经授权的错误
EN

Stack Overflow用户
提问于 2016-08-25 10:45:36
回答 2查看 478关注 0票数 0

我已经在Bluemix中部署了GeoSpatial初学者应用程序。

它可以正常工作,直到我想连接到沃森IoT平台,而不是演示MQTT服务器。

我将mqtt1.m2m4connectedlife.com更改为dzqml6.messaging.internetofthings.ibmcloud.com,并将mqtt_uidmqtt_pw添加到start参数jsonObject中。

我在Watson IoT平台仪表板中创建了一个API密钥,并将这些值用于mqtt_uidmqtt_pw

然后,在启动应用程序时,我在日志中得到一个“错误:连接拒绝:未授权”。

然后,我还尝试了apiKey和apiToken,为mqtt_uidmqtt_pw构建了沃森IoT平台环境变量,但仍然得到了相同的错误。

我还尝试了客户端和通知/输入主题的不同值,但都没有成功。

我阅读了其他几篇具有类似错误的文章,这些错误在一段时间后得到了解决,因为在创建组织和分发到所有服务器之间存在延迟。

https://developer.ibm.com/answers/questions/163862/iot-cloud-error-not-authorized.html

所以我等了一天,但仍然有同样的错误。

我还加入了本组织的常任成员,如本文所建议的:拒绝: IBM上的IoT基金会出现未经授权的错误

我将非常感谢在这方面的任何帮助!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-08-26 15:51:56

初学者应用程序中有一部分Node.js代码直接订阅通知主题。该订阅尝试是否产生了auth错误?如果是,您是否修改了代码的这一部分以传递凭据?

下面是我所指的app.js中的代码行。

代码语言:javascript
复制
var clientId = 'geo-quickstart:' + port;
//create the MQTT client and subscribe
client = mqtt.createClient(1883,"mqtt1.m2m4connectedlife.com", { "clientId": clientId } );
console.log("Subscribing to topic: " + notify_topic_string + "\n");
client.subscribe(notify_topic_string);

如果您没有在createClient调用上传递凭据,请尝试向参数列表中添加一个参数{username:"user“、password:"pass"}。

票数 2
EN

Stack Overflow用户

发布于 2016-08-26 12:09:50

使用API键建立MQTT连接时,请确保应用以下要点:

代码语言:javascript
复制
The MQTT client ID is in the format: a:orgId:appId
The MQTT user name is the API key: such as a-orgId-a84ps90Ajs
The MQTT password is the authentication token: such as MP$08VKz!8rXwnR-Q*

有关更多细节,请参见文档。如果您仍然遇到错误,请让我们知道IoT服务的6个字符的org ID,我们可以检查日志以解决您为什么要获得授权错误的问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39143190

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档