我正在创建一个使用 jQuery 进行身份验证的网络应用程序:
$.ajax({
url: "/session/create?format=json",
type: "GET",
dataType: "json",
cache: false,
username: $("#signin-email").val(),
password: $("#signin-password").val(),
success: function(data) {
if(data.success) {
success = true;
}
}
});
问题是代码仅在用户名
不包含@
之类的东西时发出AJAX请求(可能是因为@ 是 URL 中身份验证和主机的分隔符),这在我的应用程序中是必需的。谁能帮我解决这个问题?我不介意稍微改变一下后端,但要求用户使用 @
-less 电子邮件不是一种选择。
哦,我的后端是一个 Ruby-on-Rails 应用。
最佳答案
您应该将所有@s 替换为 %40。 @ 即 URL 中身份验证和主机之间的分隔符(例如 http://someone:password@example.com/
关于jquery - $.ajax + 身份验证 + 用户名中的 `@`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2660170/