[[Ruby]]
こんなこともできるのねってお話。
たとえば、以下のようなものを書いたとする。
class String
def iWebGet(i)
html = nil
ua = Hash.new
ua["User-Agent"] = "".getAgent
ua["Accept-language"] = "ja;q=1.0, en;q=0.5"
begin
timeout(i){
html = open(self,ua) do |f|
charset = f.charset # 文字種別を取得
f.read # htmlを読み込んで変数htmlに渡す
end
}
rescue TimeoutError => e
html = e
rescue => e
html = e
end
html
end
end
これ、みればわかるけど応答が String とは限らないのよね。たとえば判定はこう書けるのよ。
x = "http://192.168.1.10/".iWebGet(1)
if x.class == String
p x
else # 以下はエラー
p "Error"
p x
end
そう。 ''オブジェクト.class で、Stringクラスかどうか判定できる'' のね。
興味があったらいろいろ試してね。