Back4app 在 chrome 上给出 parseerror 200

Back4app giving parseerror 200 on chrome

我使用 back4app 为一个网络应用程序创建了一个帐户登录数据库,它可以在 Firefox-ish 上运行,但在 Chrome 上根本不起作用。在 FF 上,我尝试登录,它给了我一个解析错误 200 username/password 要求,我重新加载页面并且它工作(我不知道为什么它会这样做,顺便说一句,我也想修复它)。然而,同样的技巧在 Chrome 上不起作用,每当我重新加载它时,它只会清除字段并且不让我进入。 我查找了错误,结果发现 post 请求由于某种原因没有从输入字段中获取信息。 这是登录 window 的 HTML:

<dialog id="login">
  <h1>تسجيل دخول</h1>
  <input type="text" id="loginid" placeholder="id" pattern="[A-Za-z]">
  <input type="password" id="loginpass" placeholder="password">
  <button type="submit" id="loginButton">دخول</button>
</dialog>

这就是它背后的 JS,顺便说一句,它是香草

const login = document.querySelector('#login');
let loginid = document.querySelector('#loginid').value;
let loginpass=document.querySelector('#loginpass');
const loginButton = document.querySelector('#loginButton');
login.style.display='block';
loginButton.onclick = function() {
let user=Parse.User.logIn(loginid,loginpass.value).then(function(user){
  alert(`Welcome ${user.get('username')}`);
  login.style.display='none';
  membersDiv.style.display='block';
  addMemberArea.style.display='block';
}).catch(function(error){
  alert(error);
})
}

您似乎在使用 Parse JavaScript SDK 登录用户。根据您共享的代码,您似乎没有将正确的参数传递给 Parse.User.logIn() 方法。

logIn() 方法有两个参数 - 第一个是用户名,第二个是密码。根据您的代码,您似乎将输入字段(当前为空)的值作为用户名传递,将密码作为第二个参数传递。

您需要更改代码,使其将用户名和密码输入字段作为两个参数传递,如下所示:

Parse.User.logIn(usernameInput.value, passwordInput.value).then(function(user){
  alert(`Welcome ${user.get('username')}`);
  login.style.display='none';
  membersDiv.style.display='block';
  addMemberArea.style.display='block';
}).catch(function(error){
  alert(error);
})

有关使用 Parse JavaScript SDK 登录用户的更多信息,请查看此处的文档:

https://docs.parseplatform.org/js/guide/#logging-in