4

我过去很喜欢使用 HTTParty,但现在我遇到了一个我还没有弄清楚的问题。

我正在与之交互的 API 已成功联系,如下所示:

curl -X PUT -d 'id=1175600;status=0' http://www.lingq.com/api_v2/ru/lingqs/?apikey=[long-key]

这个 API 中的所有其他函数我在使用我的 gem 时没有遇到问题,但是这个让我很伤心,希望是因为我没有正确使用 httparty gem。我最初尝试过这个:

class Client
  include HTTParty
  base_uri 'lingq.com/api_v2'

  def method
    self.class.put(path,{:body=>{:id=>1175600,:status=>0},
                         :query=>{:apikey=>@apikey}})
  end
end

没有骰子,它的行为与我通过 curl 发出 GET 请求时的行为相同。我还尝试从命令行使用 httparty 只是为了让一些工作开始:

httparty -a PUT -d 'id=1175600;status=0' http://www.lingq.com/api_v2/ru/lingqs/?apikey=[long-key]

我得到“需要 411 长度”,这是当 :body 选项中没有任何内容时得到的。我仍在寻找,但如果有人以前看过这个并且可以提供一些建议,我将不胜感激。

4

1 回答 1

1

或者,您可以简单地获得“遏制”宝石。我不知道您是否想切换您的 HTTP API,但这是一个可行的选择,特别是如果您已经喜欢 cURL。

http://rubygems.org/gems/curb

希望我有所帮助。

于 2011-06-14T12:02:44.710 回答