如何通过链接href发送HTTP POST方法?

问题描述:

我有以下链接,并想发出POST方法而不是默认的GET方法。如何通过链接href发送HTTP POST方法?

<li><a href="/logout">logout</a></li> 

我知道connectmethodOverride中间件来处理表单提交方法,但它不与正常链接HREF帮助。

我怎么能做到这一点?

+0

可能的重复[使链接使用POST而不是GET](http://stackoverflow.com/questions/3915917/make-a-link-use-post-instead-of-get) – 2013-08-26 12:44:06

你不能;这不是HTML锚定的。

你可以用javascript来做。只需将点击事件绑定到链接并执行ajax发布请求即可。

我会推荐使用jquery ajax

你必须使用Javascript才能做到这一点。 Ruby on Rails有一个JavaScript库,您可以使用它。

https://github.com/rails/jquery-ujs/blob/master/src/rails.js

如果导入,你可以做

<a href='/stuff' data-method='delete'>destroy</a> 

我会用删除注销,因为你破坏/删除会话。

如果你想避免显示你通过常规GET传递变量,我会建议使用<input type="button" />而不是<a href="#"></a>,以及一些隐藏的输入以传递数据,并处理任何你想要的。

我的意思是,我没有看到有人想要改变锚方法的GET方法的任何其他原因。