2013-04-10 66 views
0

我需要使用RESTful輸入到我的Rails應用程序。首先,我試圖理解REST,並在我的MAC上使用WizTools RestClient進行測試。Rails休息放置HTTP/1.0 501未實現

我有一個表稱爲優先級,我試圖更新一個名爲prioritydesc的字段。

這是信息我使用

METHOD = PUT 
URL = http://mywebsite/priorities/4 
HEADER = prioritydesc 
VALUE = "TEST" 

我得到的結果是:

HTTP/1.0 501 Not Implemented 

如果我使用resttesttest.com網站,我得到:

Access-Control-Allow-Origin不允許使用原產地http://resttesttest.com

感謝您的幫助!

UPDATE1:

我需要寶石 「OAuth的插件」?

UDPATE2:

這是我priorities_controller PUT:

# PUT /priorities/1 
# PUT /priorities/1.json 
def update 
@priority = Priority.find(params[:id]) 

respond_to do |format| 
    if @priority.update_attributes(params[:priority]) 
    format.html { redirect_to @priority, notice: 'Priority was successfully updated.' } 
    format.json { head :ok } 
    else 
    format.html { render action: "edit" } 
    format.json { render json: @priority.errors, status: :unprocessable_entity } 
    end 
end 
end 

UPDATE3

我嘗試使用本地主機上:

METHOD = PUT 
URL = http://localhost/priorities/1 
HEADER = prioritynum 
VALUE = 5 

,並得到

"<html><body>You are being <a href="http://localhost:5000/priorities/4">redirected</a>.</body></html>" 

這似乎對我很好。

但是,值沒有更新。

UPDATE4

我用這個:

METHOD = POST 
URL = http://localhost/priorities 
HEADER = prioritynum 
VALUE = 5 

而且它增加了一個新的紀錄!但是,該prioritynum是空白的

我也使用

http://localhost:5000/priorities?prioritynum=5 

試圖如若數據字段(一個或多個)等(prioritynum = 5)是在報頭或主體? 我把這個身體,它沒有工作:

typecode="test" 

UPDATE5

確定這個工作!

METHOD = PUT 
URL = http://mywebsite/priorities?priority[prioritynum]=5 
+0

您可以發佈您'PrioritiesController'類的內容?或者至少是更新方法。 – 2013-04-10 20:21:56

+0

我把UPDATE2 – Reddirt 2013-04-10 20:28:46

+0

你的routes.rb中有'resources:priorities'嗎? – 2013-04-10 20:30:17

回答

0

我得到它的工作的各類控制器 - 我用這個:

Method = POST 
URL = http://mywesite/types?type[typecode]=test&type[typedesc]=test%20description