有没有办法使用纯文本和JavaScript进行注册/登录“数据库”?

问题描述 投票:0回答:1

我正在为学校做一个项目,我正在尝试实现跨浏览器登录脚本。我本质上希望注册将纯文本文件写入用户名和密码,而登录检查纯文本以查看它是否匹配而不使用PHP或mysql。我完全清楚用纯文本存储人们的登录是多么令人难以置信的愚蠢,这就是我想要的。

我目前有一个系统,它将信息存储在您的浏览器上,但它不能跨浏览器工作,并且该帐户不是永久性的。代码如下 -

function setupForm(){
    const form = document.getElementById("login-form");
    form.addEventListener("submit", handleSubmit);
}//setupForm

function handleSubmit(event){
    event.preventDefault();

    const {
        username,
        password,
        login_type,
        result
    } = event.target;

    const processUser = login_type.value == "register" ? registerUser : loginUser;
    const response    = processUser(username.value, password.value);
    result.innerHTML  = response;
}//handleSubmit

function registerUser(username, password){
    window.localStorage.setItem("exampleLogin__username", username);
    window.localStorage.setItem("exampleLogin__password", password);

    return `New user ${username} now registered!`;
}//registerUser

function loginUser(username, password){
    const registeredUser     = window.localStorage.getItem("exampleLogin__username");
    const registeredPassword = window.localStorage.getItem("exampleLogin__password");

    const validUser     = username == registeredUser;
    const validPassword = password == registeredPassword;

    if(validUser && validPassword){
        window.location.href = "benny/index.html";
    }
        else if(!validUser)     return `Username ${username} has not been registered. `;
    else if(!validPassword) return `Incorrect password for username ${username}`;
}//loginUser 

这会将信息存储在浏览器中,因此它不是永久性的,也不能跨平台工作。我想将javascript写入文件,另一篇文章读取该文件并进行检查。

javascript html html5 login
1个回答
1
投票

为了保持用户数据并使其跨浏览器可用,该数据必须存在于用户在注册或尝试登录时与之通信的某种服务器中。如果您的目标只是不使用后端而您不关心这些用户数据的安全性,则可以在云存储文件中保存和访问它。您可以使用例如http://myjson.com/api,您可以将所有数据保存到json文件中,更新它并使用简单的http请求访问它,您可以使用jQuery

© www.soinside.com 2019 - 2024. All rights reserved.