我想链接到一个页面,当用户点击链接时,他的用户名和密码已经存在(他的用户和密码将共享相同的凭据)。然而,我链接的地方,我不能控制页面代码。
用户点击链接后,是否可以让我的javascript执行?
$("#link").click(function() {
alert( "Handler for .click() called." );
var username = getCookie("username");
var password = getCookie("password");
var usernameTextBox = document.getElementById("j_username");
var passwordTextBox = document.getElementById("j_password");
usernameTextBox.value = username;
passwordTextBox.value = password;
});
所以这是工作流程。 1.一群随机用户看到我的页面,我的javascript加载,他们点击链接 2.链接将它们带到另一个我不控制代码的页面。我可以在步骤1中从页面上运行javascript仍然运行以自动填充用户名和密码吗?
我这么想是因为你可能会做大量的恶意事情(备份计划只是在链接下方显示用户名和凭据,他们必须记住它才能登录(或显示在IFRAME))。
是否有浏览器我可以启用此跨站点脚本但仅适用于这一页?
答案 0 :(得分:3)
您可以将页面中的表单提交给另一台服务器上的操作。这将一起绕过目标服务器上的登录表单
$("#link").click(function() {
var username = getCookie("username");
var password = getCookie("password");
$("<form action='https://simcontrolcenter.wireless.att.com/provision/j_acegi_security_check' method='POST'>" +
"<input name='j_username' value='" + username + "'/>" +
"<input name='j_password' value='" + password +"'/>" +
"</form>"
).submit()