0
創建一個空白的Rails應用程序,並將兩個文件放在public foler下:file1.html和file2.html。請求http:// localhost:3000/file2.html時發生路由錯誤[POST]
文件的內容是這樣的
<h1>Post</h1>
<form action='/file2.html' class='openid' method='POST'>
<input name='openid_username' type='text' />
<input type='submit' value='Login' />
</form>
<h1>GET</h1>
<form action='/file2.html' class='openid' method='GET'>
<input name='openid_username' type='text' />
<input type='submit' value='Login' />
</form>
如果我上透過點擊第一種形式,我得到
No route matches "/file2.html" with {:method=>:post}):
當我做一個GET請求,它工作正常。這是爲什麼?我在webrick和mongrel都試過,行爲也一樣。
是否意味着POST請求永遠不會被apache或web服務器處理。在這種情況下,我認爲請求將由web服務器處理,rails甚至不會出現在圖片中。 – 2009-08-18 15:01:53
這取決於你的服務器是如何設置的,但是你提到了webrick和mongrel,所以如果你在一個開發箱上運行,並將你的瀏覽器指向諸如http:// localhost:3000/file1.html之類的東西,那麼你的/file2.html將成爲http:// localhost:3000/file2.html並由rails進程提供服務。這就是爲什麼你會得到這個(rails)路由錯誤信息。 – 2009-08-19 09:58:10