简单QuickBlox createSession给出422(需要application_id)

Simple QuickBlox createSession giving 422 (application_id required)

本文关键字:application id 需要 QuickBlox createSession 给出 简单      更新时间:2023-09-26

我刚开始使用QuickBlox javascript SDK,但在尝试创建会话时遇到错误ServiceProxy.ajax error 422 Unprocessable Entity {"errors":{"base":["application_id or app_id (deprecated) required"]}}

我的test.html:

<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
    <title>QuickBlox API client - Content</title>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <script src="quickblox-javascript-sdk/quickblox.js"></script>
    <script src="config.js"></script>
    <script src="main.js"></script>
  </head>
  <body>
    <h2>Test</h2>
  </body>
</html>

我的main.js:

QB.init(CONFIG.appID, CONFIG.authKey, CONFIG.authSecret, CONFIG.debug);
QB.createSession(TEST_USER, function(err, result) {
  // callback function
  console.log('callback')
  if (err) {
    console.log(err.detail);
  } else {
  }
});

我的config.js:

var CONFIG = {
  appId: 19335,
  authKey: 'UtcSpG3mWkLzVmU',
  authSecret: 'zXx2uFdRXvr5eR-',
  debug: true
};
var TEST_USER = {
  login: 'test1',
  password: 'hello123'
}

error:

POST https://api.quickblox.com/session.json 422 (Unprocessable Entity)
jquery.min.js:4
k.cors.a.crossDomain.sendjquery.min.js:4 
n.extend.ajaxquickblox.js:2549
ServiceProxy.ajaxquickblox.js:49
AuthProxy.createSessionquickblox.js:2391
QuickBlox.createSessionVM590:2
(anonymous function)VM584:762 InjectedScript._evaluateOnVM584:695 InjectedScript._evaluateAndWrapVM584:609 InjectedScript.evaluate
quickblox.js:2491
ServiceProxy.ajax error 422 Unprocessable Entity {"errors":{"base":["application_id or app_id (deprecated) required"]}}

这个解决方案非常愚蠢,我自己偶然发现了它。

您从Quickblox的网站复制了代码
应用程序ID的密钥在配置JSON中命名为"appId",而在QB.init 中被引用为"appId"

当我尝试使用您的凭据时,我得到了相同的错误。。。但当我尝试自己的时候,效果很好。你能验证你的应用凭据并重试吗?

var TEST_USER = {
  login: 'test1',
  password: 'hello123'
};
QB.init(17704, 'Tbr7Gum6rsHsQNL', 'JbN7JH5QK87sODR', true);
QB.createSession(TEST_USER, function(err, result) {
  if (err) {
    alert(err.message);
  } else {
    alert(result.token);
  }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://quickblox.com/js/quickblox.min.js"></script>