1

次のように lib/assets ファイルにモジュールがあります。

require 'net/http'
require 'cgi'
require 'json'

 module FetchRec
  rate.sample(5).each do |result|
    begin
      url = URI.parse("http://www.url.com/dprc=Y&item_id=#{result["item"]}")
     rescue
        next 
      end
     r = JSON.parse(Net::HTTP.get_response(url).body)
  end

サーバーを起動すると、例外が発生します: 構文エラー -- "次は無効です"

URL が有効でない場合、json 解析スクリプトが次の URL にスキップして解析するように、このモジュールで例外を処理するにはどうすればよいですか?

4

1 に答える 1

1

レスキュー開始ブロックを削除して、次のものに置き換えてみてください

url = URI.parse("http://www.url.com/dprc=Y&item_id=#{result["item"]}") rescue nil
next if url.nil?
于 2013-02-06T08:06:02.657 に答える