我们提交了一个javascript / jQuery表单:
var form = jQuery("<form action='http://ourdomain.com/api/setter' method='post' target='response_frame'><input type='text' name='c' value='aaaa'></form>").appendTo(document.body);
form.submit();
相应的请求在IIS日志中显示为GET(并且缺少&#34; c&#34;值因为它应该在正文中)。任何暗示POST如何成为GET的提示?
我无法在本地重新调用它,它可以按预期的方式使用POST,它只显示在生成的IIS日志中。
答案 0 :(得分:1)
这种情况正在发生,因为IIS会向URL添加尾部斜杠,从而导致301重定向。因此POST
变为GET
。作为解决方案,尝试在表单操作中添加尾部斜杠:
var form = jQuery("<form action='http://ourdomain.com/api/setter/' method='post' target='response_frame'><input type='text' name='c' value='aaaa'></form>").appendTo(document.body);
form.submit();
我希望这会对你有所帮助。