背景:我正在尝试调用 C# 函数,以从 .aspx 网页上的 JavaScript 代码返回用户名和密码的身份验证结果。
目前我有以下 Javascript AJAX POST 请求。
$.ajax({
type: "POST",
url: "Management Login Page.aspx/Authenticate",
data: { username: username, username: password},
success: function(data)
{
alert('ok');
console.log(data);
if (data.result == true)
{
alert('correct');
window.location.replace("Management Page.aspx");
}
},
Error: function ()
{
alert('error');
}
});
这会从“管理登录页面.aspx”内的“Management_Login_Page”类中调用以下方法“身份验证”
[WebMethod]
public static bool Authenticate(string username, string password)
{
System.Diagnostics.Debug.WriteLine(username, password);
if ((username == "test") && (password == "test"))
{
return true;
}
return false;
}
它返回整个 html 页面(如下所示),而不是仅返回单个 bool 值。
ect.....
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<style>
body {
padding: 0;
margin: 0;
}
html, body, #Login1 {
height: 100%;
font: 10pt "Helvetica Neue", Arial, Helvetica, sans-serif;
align-content: center;
}
.lorem {
font-style: italic;
color: #AAA;
}
.center {
display: block;
margin-left: auto;
margin-right: auto;
}
</style>
</head>
<body class="login login-action-login wp-core-ui locale-en-us">
<div id="login">
如果我将以下内容添加到 AJAX 请求中,我会在网页上收到错误 500。
dataType: 'json',
contentType: "application/json; charset=utf-8",
如何修改代码以仅返回 bool 值?
编辑 - 将方法中的 bool 值更新为测试剩余的字符串
最佳答案
这是正确的吗?
data: { username: username, username: password},
我看到 2 个用户名。
此外,数据通常是字符串:
data: JSON.stringify({ username: "username", username: "password"}),
关于javascript - 如何使用 C# 方法从 ASP.Net Javascript AJAX 请求返回 bool 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58082979/