2012-05-21 2 views
2

http 삭제를 호출하는 동안 실수를 바로 잡아 주시겠습니까? 더 이상의 설명없이 InternalServerError가 발생합니다.요청 본문 및 내용 유형이있는 Ruby Restclient.delete

동일한 호출이 FireFox RESTClient 플러그인에서 제대로 작동합니다.

샘플 위해 RESTClient

require "rest_client" 
data= {"name" => "foo"} 
res = RestClient.delete(url, data.to_json) 

예외 : 번호 process_url_params': undefined method delete_if '(NoMethodError)

샘플 그물/HTTP /lib/restclient/request.rb:72:in

http = Net::HTTP.new('some ip valid', port) 
headers = {'Content-Type' => 'application/json'} 
data = {"name" => "foo"} 
resp, data = http.delete(path, headers) 

오류 : Net :: HTTP InternalserverError

답변

0

이 문제가 발생하여 json 데이터 부분을 제거하여 작동 시켰습니다.

def doRestDelete(url, values) 
    puts "URL: ", url 
    jsonValues = values.to_json 
    puts jsonValues 
    begin 
     raw = RestClient.delete url # removed this bit ---> , jsonValues 
     puts raw 
    rescue => e 
     abort(e.response) 
    end 
    return JSON.parse(raw) 
end  
관련 문제