easymock怎么做判断

发布于 2022-09-07 19:48:26 字数 1710 浏览 34 评论 0

问题描述

没有办法动态改变返回数据中success的值

问题出现的环境背景及自己尝试过哪些方法

我用ajax做一个登录界面,因为没有后台所以使用了easymock来写假数据,但是发现ajax返回的数据中的success一直是固定值。不能像php中那样动态变化

html代码

<div id="wrapper">
    <h1 id="title">登陆界面</h1>
    <div id="content">
        <label for="username">用户名</label>
        <input type="text" id="username" value>
        <br/>
        <label for="pass">密码</label>
        <input type="password" id="pass" value>
    </div>
    <div id="btn">
        <button id="login">登录</button>
        <a href="#">新用户?在此注册</a>
    </div>
</div>

js代码:

var username=document.getElementById("username").value;
var pass=document.getElementById("pass").value;
var btn=document.getElementById("login");
var xhr;
btn.onclick=function () {

if(window.XMLHttpRequest){
    xhr=new XMLHttpRequest();
}
else{
    xhr=new ActiveXObject("Microsoft.XMLHttpRequest");
}
xhr.open("get","https://easy-mock.com/mock/5b57d2a603a5844b1c942098/user/query?name="+username+"&pass="+pass,true);
xhr.send();
xhr.onreadystatechange=function () {
    if(xhr.readyState==4){
        if(xhr.status==200){
            console.log("连接服务器成功");
            var data=JSON.parse(xhr.responseText);
            console.log(data);
            if(data.success){
                window.location.href="indexJS.html"
            }
            else{
                alert("账户名或密码错误,请重新输入");
            }
        }
    }
}

}

easymock数据

你期待的结果是什么?实际看到的错误信息又是什么?

我希望能够先判断一下填写的数据是否存在于模拟数据中,如果存在则让返回数据中的success为true

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

路弥 2022-09-14 19:48:26

问题已解决,
使用_req对象,通过_req.query属性获取到参数值,判断是否等于其中的一个值,如果是的话就返回true。不是就返回false

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文