js模拟支付宝提交表单

弄过支付宝的程序猿可能都知道,里面有非常多地方都用到了自提交表单的方式,支付宝的接口通过请求API的形式取得server返回的表单字符串,使用out.print("表单字符串")在jsp页面上自提交表单。

这样的做法尽管非常少有人使用,可是它也有着自身的价值,比如有的时候在js内部要提交一个完整的表单可是又不能使用ajax提交。这样的时候这样的思想就能发挥作用了

封装表单的js例如以下

 var formStart="<form id="userForm" name="userForm" action="check.php"  method="POST">";
 var content="<input type="hidden" name="id" value="20"/>";
 var formEnd="</form>";
 var submitJs="<script>document.forms['userForm'].submit();</script>";
 var completeForm=formStart+content+formEnd+submitJs;
 document.write(completeForm);

这段代码运行后等效于直接给server提交了一个表单。有点类似POST请求,这种话就不须要通过地址栏传參,安全性得到了提高

原文地址:https://www.cnblogs.com/yjbjingcha/p/6938579.html