我试图做一个登录页面使用html,ajax & ASP.NET.The数据是真正传递给ajax函数,但是当我调试asp页面的用户名和密码与NULL一起发送。 的代码应该采取用户名密码&然后返回用户标识登录页面使用ASP.Net和Ajax
Html页面:
<div id="usernameid">Username:</div><input id="username" type="text"/> <span id="username_status"></span>
<div id="passwordid">Password:</div><input id="password" type="password"/> <span id="password_status"></span>
<div> <input id="loginbutton" onclick="UserLogin()" type="submit" value="Submit" /></div>
的Javascript:
function UserLogin() {
var postData = JSON.stringify({ "username": JSON.stringify($("#username").val()), "password": JSON.stringify($("#password").val()) });
alert(postData);
$.ajax({
type: "GET",
url: "http://localhost:49317/LoginPageForLearn.aspx",
data: postData,
contentType: "application/json; charset=utf-8",
dataType: "jsonp",
jsonp: 'jsoncallback',
success: callbackfunction,
error: function (msg) { alert(msg); }
});
}
function callbackfunction(datacoming) {
localStorage["UserID"] = datacoming;
alert(datacoming);
Asp.net页面:
protected void Page_Load(object sender, EventArgs e)
{
string userName = "";
int userId = -1;
string PassWord = "";
if (Request.QueryString.Count != 0 && Request.QueryString["username"] != string.Empty && Request.QueryString["password"] != string.Empty)
{
userName = Request.QueryString["username"];
PassWord = Request.QueryString["password"];
userId = GetUserID(userName, PassWord);
}
}
待办事项你有什么想法为什么不正确的数据传递?或者你有什么其他的想法,我怎样才能使用HTML做一个登录页面,并在SQL访问数据。
非常感谢。
您是通过QueryString以明文形式发送密码的吗?你是否考虑过安全? – 2012-04-03 17:37:34
嗯,对不起,我还在学习,你有更好的主意吗? – OnlyHope 2012-04-03 17:39:57
是的,使用HTTPS。另外建议使用POST动词以避免在Web服务器日志中获取密码。 – 2012-04-03 17:41:32