javascript - 使用js对html onclick发出rest请求

标签 javascript html rest

我几乎总是使用 python,所以这一切对我来说都是新鲜事。我正处于构建带有简单登录页面的网络应用程序的早期阶段。我试图做到这一点,以便当我单击登录按钮时,html 中的 onclick 操作应该调用 login_user 函数来向我已经构建的后端 api 发出休息请求。

这是 html 和 js 函数:

<div>
    <label for="username">username:</label>
    <input type="text" id="username" name="username">
</div>

<div>
    <label for="password">password:</label>
    <input type="password" id="password" name="password">
</div>

<button id="loginButton" onclick="login_user()">login</button>


<script type="text/javascript">
    function login_user(path, username, password) {
        'http://127.0.0.1:5000/' = path;
        document.getElementById('username') = username;
        document.getElementById('password') = password;

        let data = {username: username, password: password};

        return fetch(path, {method: "GET", body:                 
            JSON.stringify(data)});
    };
</script>

但是,这不会提出请求。我不认为问题出在 javascript 中?我尝试制作一个更简单的功能,只需在 onclick 时将我重定向到主页,但这也不起作用。我不太确定发生了什么事,如果您能给我指出正确的方向,那就太棒了!

最佳答案

function login_user(path, username, password) {
        'http://127.0.0.1:5000/' = path; // Assigning values is wrong.
...
}

您必须将函数重写为:

function login_user() {
        let path = 'http://127.0.0.1:5000/';
        let username = document.getElementById('username');
        let password = document.getElementById('password');

        let data = {username: username, password: password};

        return fetch(path, {method: "GET", body:                 
            JSON.stringify(data)});
    };

关于javascript - 使用js对html onclick发出rest请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58108875/

相关文章:

javascript - 如何通过原型(prototype)传递多维数组?

javascript - 如何动态创建推文按钮?

javascript - 如何在 Angular 中隐藏显示

database - Microsoft Access 的 REST(或其他从 App Access 的方式)

java - 如何使用 rest-assured 将 header 位置响应与正则表达式匹配

rest - 通过 REST 和消息队列使用微服务和多输入的 DDD

javascript - 从 DOM 中删除尚未完全加载的图像 : is transmission aborted?

javascript - 如何在js中读取db值

html - 滚动时如何使页面的一部分固定在顶部

javascript - 当父元素具有属性pointer-events : none?时,如何使子元素打开链接