我一直在使用RestClient来调用API,所以在这里我调用DELETE方法来删除一个图像:
@mposter_D = params[:mposter_D]
@mid_D = params[:mid_D]
req = Hash.new
req['mov'] = @mid_D
puts "....#{req.to_json}"
resource_pos = RestClient::Resource.new
Rails.application.config.sta_url+"/movi/pos/"+@mposter_D
response_pos = resource_pos.delete req.to_json, :content_type => :json
在打电话给我之后我得到了这个:
ArgumentError (wrong number of arguments (2 for 1)): in the last line of code
答案 0 :(得分:1)
我遇到了同样的问题。显然,在执行delete方法时,您无法从url中传递参数。 (即这不起作用:http://example.com/resource?foo=bar&baz=qux)
如果您需要在删除请求中添加参数,请使用以下格式:
RestClient.delete 'http://example.com/resource', :params => {:foo => 'bar', :baz => 'qux'}
答案 1 :(得分:0)
我所知道的关于通过rest_client删除的是,它只需要一个参数:
RestClient.delete 'http://demo.com/your_resourse'
你必须通过该方法传递你的网址。感谢
答案 2 :(得分:0)
试试这个:
RestClient.delete 'http://foo.com/your_resourse_id?#{req.to_query}'
或者:
RestClient.delete 'http://foo.com/your_resourse_id?mov=' + @mid_D