看一个微信公众号的预约系统的源代码,发现提交预约信息仅仅是一段普通的表单提交
<form id="code_form" action="http://ali.marico.cn/wei/index.php?s=/addon/ReserveBike/Show/reserveBike.html" method="post">
<input type="hidden" name="store" id="choose_store" value="1" />
<input type="hidden" name="etime" id="choose_event" value="0" />
<input type="hidden" name="dtime" id="choose_date" value="1459094400" />
<input type="hidden" name="number" id="choose_number" value="" />
</form>
function submitCode(){
if($('#choose_store').val().trim() == "") return;
if($('#choose_event').val().trim() == "") return;
if($('#choose_date').val().trim() == "") return;
if($('#choose_number').val().trim() == ""){
$('#choose_result').html('<font color="red">您还未选择任何座位!</font>');
return;
}
$("#code_form").submit();
}
那么普通的表单提交,是如何识别我是谁(微信id啥的)?cookie吗?那cookie是普通表单提交也会提交的吗?
微信的webkit内核自带有身份校验的内容吧
首先,任何请求都会提交同域的 cookie。然后,登录成功后种 cookie 的事情是 response 的 header 里做的,和怎么提交没有必然联系,比如是 form 或者 ajax 什么的。
浏览器默认任何请求都会提交相关域名的cookie
在你打开这个表单的页面的时候,或许已经被这个应用用静默授权的方式获取到openid了