在我的网站上指定PayPal的返回URL时,出现以下错误:
没有路线匹配[POST]“/”
我想为POST
方法指定默认路由。
如何使默认'root'
路由同时接受POST
次请求?
我可以为'root'
和POST
请求指定单独的GET
路由吗?
我的路线目前看起来像这样:
root GET / refinery/pages#home
顺便说一下,我正在使用Refinery CMS
答案 0 :(得分:1)
我认为root
是一个GET
请求,它“想要”指定应用程序应该如何仅通过域名调用应答(或挂载) - 引擎的路径)。
您可以尝试使用
match "/", :via => :post ...
但是如果您允许回复问题:为什么您坚持要将PayPal发布到您的root-URL?您应该能够在那里指定任意URL,只需定义一个
match "postback" => "...", :via => :post
并且一切都很好。
顺便说一句:sanny Sin要求你发布rake routes
命令的输出,在你的命令行输入它(并且最有可能省略炼油厂路线: - )
答案 1 :(得分:1)
最后对我有用的是match
加上redirect
:
match "/" => redirect("/"), :via => :post
这会将POST
个请求转换为/
个GET
个请求。否则,请求将转到正确的路由,但它仍然是POST
请求,这使得我的会话未加载。我仍然不确定为什么POST
/
{{1}}请求没有加载我之前进入PayPal并返回的原始会话。