我有一个需要用户登录的专用系统。它链接到一个单独的网络邮件登录页面,该页面要求用户输入两次相同的凭据。我可以用html参数预先填充这些字段,但似乎找不到自动提交的方法。有可能吗?怎样
一个低技术解决方案是在页面加载时启动javascript,检查隐藏的表单字段,并根据值使用document.forms['<表单名称>'].submit()提交表单。
您可以使用表单的submit方法和Javascript。
只需为您的表单分配一个id:
<form id="form_id">
然后在Javascript中找到它并运行提交方法
var form = document.getElementById('form_id');
form.submit();
这不是一个好的做法,但你可以把它和window一起使用
window.onload = function() {
var form = document.getElementById('form_id');
form.submit();
}
如果网络邮件没有受到CSRF攻击的保护(是的,攻击,因为在第三方网站上自动提交表单是一种风险),您可以利用CSRF让用户登录。
<form action="https://*address of the webmail login page*" target="_blank">
<input type=hidden
name="*find what field names are used for login/pass*"
value="username, etc">
</form>
<script>document.forms[document.forms.length-1].submit()</script>