0

これは奇妙な状況です。理由を教えていただければ幸いです。

require "open-uri"

class TraceParser
  def starttorip
    url = 'http://yahoo.com'
    proxy_addr = 'http://my proxy server:'
    proxy_port = 1010
    begin
      open(url, :proxy => (proxy_addr + proxy_port.to_s)) do |source|
        source.each_line do |x|
          puts x
        end
      end
    end
  end
  varb = TraceParser.new
  varb.starttorip
end

上記のコードは魅力のように機能し、すべてがバラ色です。しかし、プロキシ定義を次のように変更すると:

require "open-uri"
class TraceParser
  def starttorip
    url = 'http://yahoo.com'
    begin
      open (url, :proxy => 'http://my proxy server:1010') do |source|
        source.each_line do |x|
          puts x
        end
      end
    end
  end
  varb = TraceParser.new
  varb.starttorip
end

すべてが壊れます:

/tracerparser.rb:6: syntax error, unexpected ',', expecting ')' (SyntaxError)
      open (url, :proxy => "my proxy server...

私が理解していることから、最初のものはプロキシ定義を2つの文字列に分割し、開いているgemに追加しています。情報を共有していただきありがとうございます。

4

1 に答える 1

1

問題は の後のスペースopenです。プロキシ マップ エントリとは関係ありません。

于 2012-05-24T22:58:09.383 に答える