尝试创建 Quickblox 群聊对话框,使用 REST API 登录用户时出现错误。
Posted
技术标签:
【中文标题】尝试创建 Quickblox 群聊对话框,使用 REST API 登录用户时出现错误。【英文标题】:Trying to create a Quickblox group chat dialog, get Error when using REST API to login user. 【发布时间】:2015-11-26 22:13:13 【问题描述】:我正在尝试完全通过 REST API 在 quickblox 中创建群聊对话框。 如何从 REST API 创建用户、会话、登录,然后创建聊天对话框?我只能成功完成前两个。
本教程有示例: http://quickblox.com/developers/Authentication_and_Authorization#API_User_Sign_In
我可以创建一个会话并创建一个用户,之后我就不能再做更多了。当我尝试登录用户时,如上面的示例,使用教程中的这个和我的令牌和用户:
curl -X POST \
-H "Content-Type: application/json"\
-H "QuickBlox-REST-API-Version: 0.1.0" \
-H "QB-Token: bee57951d76c03ffdecaad65bba039f4ad413ed7" \
-d '"login": "Laralara", "password": "12345678"' \
http://api.quickblox.com/login.json
我得到错误:
curl: (6) Could not resolve host: QuickBlox-REST-API-Version
"errors":"login":["(or email) cannot be blank"],"password":["cannot be blank"]
无论我在数据“-d”中输入什么,我都会得到相同的响应。
如果我尝试像在示例中那样直接创建一个聊天对话框,使用这个: http://quickblox.com/developers/Chat#Create_dialog
curl -X POST \
-H "Content-Type: application/json"\
-H "QuickBlox-REST-API-Version: 0.1.0" \
-H "QB-Token: ffed2e8da05b7a858ddee861ff31a09886aef540" \
-d '"type": 2, "name": "Chat Bob, Sam, Garry", "id": "17435", "occupants_ids": "5712780"' \
http://api.quickblox.com/chat/Dialog.json
我得到错误:
curl: (6) Could not resolve host: QuickBlox-REST-API-Version
"errors":"base":["Forbidden. Need user."]
谢谢。
【问题讨论】:
【参考方案1】:请确保具有此登录名和密码的用户存在。请到管理面板检查是否有这样的用户,并检查用户名和密码是否匹配。
【讨论】:
【参考方案2】:quickblox 需要维护 4 个步骤。
-
使用 QBAuth 服务创建应用会话(无用户)。
使用有效的用户详细信息登录应用程序。
登录聊天服务
创建与登录用户的会话。
通常人们创建会话并开始进行一对一聊天。如果您一直执行到第 3 步,则不会有任何问题。
一旦你开始创建公共或私人群组,你会得到一个错误
"errors":"base":["Forbidden. Need user."]
要解决此错误,您必须完成第 4 步。即使用有效用户(登录名和密码)创建 AppSession 或 QBAuth 会话。
完成第 4 步后,您可以访问所有 QuickBlox 服务,例如创建群组、加入房间、在群组中发送和接收消息等。
试试这个。
它适用于我在 android 上。 :)
干杯。
【讨论】:
【参考方案3】:您的字段login
和password
错误。你应该使用user[login]
和user[password]
。
查看 Quickblox 文档中的此示例:https://quickblox.com/developers/Generate_session_in_php
【讨论】:
以上是关于尝试创建 Quickblox 群聊对话框,使用 REST API 登录用户时出现错误。的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 WEB SDK 在 QuickBlox 中创建房间