我有一个a.shtml页面和一个表单。当我使用POST提交表单时,我调用a.cgi并使用META从cgi重定向页面b.shtml。但我在access.log上看到a.cgi执行了两次。它会导致一些问题。为什么它被调用两次,第二个是GET,我怎么能避免这种情况呢?它仅发生在Chrome上。 IE,Firefox还可以
我的表格:
<form method="post" action="cgi-bin/a.cgi"> ....</form>
meta中的cgi:
printf("<META HTTP-EQUIV=\"Refresh\" CONTENT=\"3;url='/b.shtml'\ "/>");
访问日志:
..POST /cgi-bin/a.cgi HTTP/1.1|Host: xxx.xxx.xxx.xxx|Connection: keep-alive|Content-Length: 42|Cache-Control: max-age=0|Origin: .....
..GET /cgi-bin/a.cgi HTTP/1.1|Host: xxx.xxx.xxx.xxx|Connection: keep-alive|User-Agent: Mozilla/5.0 (Windows NT
答案 0 :(得分:1)
听起来您希望使用html元刷新元素触发重新提交HTTP POST。
我不知道这是否可行或可靠。希望这些条款至少可以帮助你进行谷歌搜索。
您可能希望改为使用会话。
EDIT2:
我发现了这个问题: “POST-requesting a location sending Refresh header makes Firefox create GET request but still hold POST data”