1

Railsの「request.body」をその場で「解析」する必要があります。次のようなものです。

  feed = Feedzirra::Feed.parse(request.body.read)
  feed.entries do |entry|
    entry.title      # => "Ruby Http Client Library Performance"
    entry.url        # => "http://www.pauldix.net/2009/01/ruby-http-client-library-performance.html"
    entry.author     # => "Paul Dix"
    entry.summary    # => "..."
    entry.content    # => "..."
    entry.published  # => Thu Jan 29 17:00:19 UTC 2009 # it's a Time object
    entry.categories # => ["...", "..."]
  end

出来ますか?ストリーミング入力やファイルからの読み取りに似ているはずですよね?

4

1 に答える 1

1

...コードは正しかったし、解析の方法も間違っていたが、私が見逃したのは「出力」だった;-)

「puts」を追加すると、その場で値を取得できます (http POST を「request.body」に取得している間):

feed = Feedzirra::Feed.parse(request.body.read)
  feed.entries.each do |entry|
    puts entry.title      # => "Ruby Http Client Library Performance"
    puts entry.url        # => "http://www.pauldix.net/2009/01/ruby-http-client-library-performance.html"
    puts entry.author     # => "Paul Dix"
    puts entry.summary    # => "..."
    puts entry.content    # => "..."
    puts entry.published  # => Thu Jan 29 17:00:19 UTC 2009 # it's a Time object
    puts entry.categories # => ["...", "..."]
  end

提案してくれたクリストファー・マニングに感謝します...

于 2011-05-28T09:07:10.817 に答える