我為帶有 back4app 的 Web 應用程式創建了一個帳戶登錄資料庫,它適用于 Firefox-ish 但根本不適用于 Chrome。在 FF 上,我嘗試登錄,它給了我一個決議錯誤 200 需要用戶名/密碼,我重新加載頁面并且它可以作業(我不知道為什么它會這樣做,我也想修復它)。然而,同樣的技巧在 Chrome 上不起作用,每當我重新加載它時,它只會清除欄位并且不讓我進入。我查看了錯誤,結果發現發布請求沒有從輸入中獲取資訊出于某種原因的領域。這是登錄視窗的 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);
})
}
uj5u.com熱心網友回復:
看起來您正在使用 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
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/476631.html
上一篇:將陣列寫入檔案fs
