我正在尝试在用户第一次登录时执行用户验证。如果用户尚未经过验证,那么我将其userid
从代码发送到回调方法,并在回调中使用重定向到另一个页面
(window.location.href = "/verifyuser?id=" + response.userId)
但是我不希望这样。相反,我想对带有值的 url 进行 ajax 调用。我不希望 userId 在 url 中可见。我尝试使用
$.ajax({
type:"POST"
url:"/verifyuser",
data:{id:response.userId},
async:false
});
但它没有用。我的服务器端代码如下(我使用的是 mvc 4)
[HttpGet]
public ActionResult VerifyUser(string id)
{
ViewBag.Id = id;
return View("~/Views/User/VerifyUser.cshtml");
}
我的js代码如下:
var postObj = {
url: "Home/Login",
data: {},
callback: function (status, response) {
if (response.status === 400) {
var errors = response.errors;
var serverValidate = new PS.Validate(userObj);
var isvalid = serverValidate.showErrors(errors);
}
else {
if (response.userId !== null && response.userId !== undefined) {
window.location.href = "/verifyuser?id=" + response.userId;
}
else {
window.location.href = "/user-dashboard";
}
}
}
};
me.fm.post(postObj);
有没有办法在有或没有 Ajax 的情况下做到这一点?谢谢。