[#29061] ファイルを送信する CGI にて。 — ohara@...
小原と申します。かなり久しぶりです。
11 messages
2001/04/03
[#29066] 格納のしかた — Katsuya Tanaka <tanaka@...>
6 messages
2001/04/03
[#29104] [bug?] cgi.rb — Takaaki Tateishi <ttate@...>
立石です.
7 messages
2001/04/04
[#29118] Timezone — Takashi Yokoyama <yoko@...>
こんばんは。
12 messages
2001/04/05
[#29127] dbm.so はどうやって作るのでしょう? — Shin-ichi Fukuda <sin@...>
はじめまして福田といいます。
11 messages
2001/04/05
[#29128] Re: dbm.so はどうやって作るのでしょう?
— TADA Tadashi <sho@...>
2001/04/06
ただただしです。
[#29133] required version — "Shin'ya Adzumi" <adzumi@...>
あづみです。
7 messages
2001/04/06
[#29154] ライセンスについて質問です。 — Tadashi Hara <t-hara@...4u.or.jp>
初めてメールさせていただきます。原 忠司と申します。
5 messages
2001/04/09
[#29157] touch — "Shin'ya Adzumi" <adzumi@...>
あづみです。
7 messages
2001/04/09
[#29170] Call for Papers Linux Conference 2001 — akira yamada / やまだあきら <akira@...>
18 messages
2001/04/10
[#30729] Re: Call for Papers Linux Conference 2001
— "Shin'ya Adzumi" <adzumi@...>
2001/07/27
あづみです。
[#30213] Re: Call for Papers Linux Conference 2001
— akira yamada / やまだあきら <akira@...>
2001/06/13
[#30232] Re: Call for Papers Linux Conference 2001
— Masato KIYAMA <masato@...>
2001/06/14
木山@広島市立大です.
[#30239] Re: Call for Papers Linux Conference 2001
— akira yamada / やまだあきら <akira@...>
2001/06/14
[#30241] Re: Call for Papers Linux Conference 2001
— matz@... (Yukihiro Matsumoto)
2001/06/14
まつもと ゆきひろです
[#29171] new irb version 0.7.1-beta — keiju@... (Keiju ISHITSUKA)
けいじゅ@日本ラショナルソフトウェアです.
10 messages
2001/04/10
[#29188] 配列に要素を挿入する — 島田 喜郎 <yoshimada@...>
島田喜郎と申します。Rubyをはじめたばかりのものです。
5 messages
2001/04/11
[#29190] Time Stamp Copy of File.copy — "たけ(tk)" <ggb03124@...>
ftools.rb の move では utime を行っていて日付が同じになりますが、copy
42 messages
2001/04/11
[#29193] Re: Time Stamp Copy of File.copy
— matz@... (Yukihiro Matsumoto)
2001/04/11
まつもと ゆきひろです
[#29201] Re: Time Stamp Copy of File.copy
— " たけ (tk)" <ggb03124@...>
2001/04/11
たけ(tk)です。
[#29203] Re: Time Stamp Copy of File.copy
— WATANABE Hirofumi <eban@...>
2001/04/11
わたなべです.
[#29212] Re: Time Stamp Copy of File.copy
— Minero Aoki <aamine@...>
2001/04/12
あおきです。
[#29215] Re: Time Stamp Copy of File.copy
— " たけ (tk)" <ggb03124@...>
2001/04/12
たけ(tk)です。
[#29220] Re: Time Stamp Copy of File.copy
— Minero Aoki <aamine@...>
2001/04/12
あおきです。
[#29234] Re: Time Stamp Copy of File.copy
— " たけ (tk)" <ggb03124@...>
2001/04/13
たけ(tk)です。
[#29242] Re: Time Stamp Copy of File.copy
— Minero Aoki <aamine@...>
2001/04/13
あおきです。
[#29236] Re: Time Stamp Copy of File.copy
— matz@... (Yukihiro Matsumoto)
2001/04/13
まつもと ゆきひろです
[#29238] Array#include!
— " たけ (tk)" <ggb03124@...>
2001/04/13
たけ(tk)です。
[#29244] Re: Array#include!
— matz@... (Yukihiro Matsumoto)
2001/04/13
まつもと ゆきひろです
[#29258] Re: Array#include!
— " たけ (tk)" <ggb03124@...>
2001/04/14
たけ(tk)です。
[#29260] Re: Array#include!
— " たけ (tk)" <ggb03124@...>
2001/04/14
たけ(tk)です。
[#29302] Re: Array#include!
— Koji Arai <JCA02266@...>
2001/04/17
新井です。
[#29304] Re: Array#include!
— " たけ (tk)" <ggb03124@...>
2001/04/17
たけ(tk)です。
[#29305] Re: Array#include!
— matz@... (Yukihiro Matsumoto)
2001/04/17
まつもと ゆきひろです
[#29198] Ruby プロセスが肥大化していく — Sakae Kobayashi <sakae@...>
困った時に出てくる 小林榮です。
11 messages
2001/04/11
[#29202] Re: Ruby プロセスが肥大化していく
— matz@... (Yukihiro Matsumoto)
2001/04/11
まつもと ゆきひろです
[#29200] "*" in Verbatim of RD — Yoshiki Wada <wada@...>
和田と申します。
7 messages
2001/04/11
[#29223] Re: "*" in Verbatim of RD
— rubikitch <rubikitch@...>
2001/04/13
From: Yoshiki Wada <wada@wombat.or.jp>
[#29246] データ読み込み — Kenji Noda <zaq94465a@...>
野田と申します。
6 messages
2001/04/13
[#29276] ruby-tcpwrap and mkmf.rb — Takahiro Kambe <taca@...>
こんばんは。
9 messages
2001/04/15
[#29280] Re: ruby-tcpwrap and mkmf.rb
— matz@... (Yukihiro Matsumoto)
2001/04/15
まつもと ゆきひろです
[#29320] Re: sin(hoge) -> hoge.sin — Takeshi Horinouchi <horinout@...>
堀之内です。
6 messages
2001/04/18
[#29334] Re: [ruby-ext:01697] Windows 版 Apache1.3.17 以降で eruby を使ったときの問題 — Shugo Maeda <shugo@...>
前田です。
4 messages
2001/04/19
[#29339] media watch 2001.04.18 — Noritsugu Nakamura <nnakamur@...>
5 messages
2001/04/19
[#29348] Open3 — NISHIO Mizuho <mzh@...>
どうも西尾です。
16 messages
2001/04/20
[#29359] Re: Open3
— nobu.nakada@...
2001/04/20
なかだです。
[#29360] Re: Open3
— NISHIO Mizuho <mzh@...>
2001/04/20
どうも西尾です。
[#29363] Re: Open3
— nobu.nakada@...
2001/04/21
なかだです。
[#29366] Re: Open3
— NISHIO Mizuho <mzh@...>
2001/04/21
どうも西尾です。
[#29376] Re: Open3
— nobu.nakada@...
2001/04/23
なかだです。
[#29379] Re: Open3
— nobu.nakada@...
2001/04/23
なかだです。
[#29349] binary IO of integer and FP / Marshal — Takeshi Horinouchi <horinout@...>
堀之内です。
4 messages
2001/04/20
[#29353] Re: binary IO of integer and FP / Marshal — "Okada Jun" <yun@...>
岡田です。
10 messages
2001/04/20
[#29377] rdtool/cygwin — Shin-ichiro HARA <sinara@...>
原です。
11 messages
2001/04/23
[#29378] Re: rdtool/cygwin
— WATANABE Hirofumi <eban@...>
2001/04/23
わたなべです。
[#29380] Re: rdtool/cygwin
— Shin-ichiro HARA <sinara@...>
2001/04/23
原です。
[#29389] irb-tools release! — keiju@... (Keiju ISHITSUKA)
けいじゅ@日本ラショナルソフトウェアです.
8 messages
2001/04/24
[#29392] media watch 2001.04.24 — Noritsugu Nakamura <nnakamur@...>
6 messages
2001/04/24
[#29393] Re: Ruby mascot proposal — akira yamada / やまだあきら <akira@...>
8 messages
2001/04/24
[#29397] rnet.rb 〜高レベルネットライブラリ〜 — rubikitch <rubikitch@...>
るびきちです。
11 messages
2001/04/24
[#29443] Re: rnet.rb 〜高レベルネットライブラリ〜
— Keisuke Minami <keisuke@...>
2001/04/27
こんばんは。三並です。
[#29449] Re: rnet.rb 〜高レベルネットライブラリ〜
— rubikitch <rubikitch@...>
2001/04/29
From: Keisuke Minami <keisuke@rccn.com>
[#29482] Re: rnet.rb 〜高レベルネットライブラリ〜
— Kazuhiro NISHIYAMA <zn@...>
2001/05/01
In <20010429164803-28016S.0722406601@jcom.home.ne.jp>
[#29407] net/pop 1.2.0 — matsue <mattue@...>
松江です。
6 messages
2001/04/25
[#29418] Re: [BUG?] require invalidates exception — "Okada Jun" <yun@...>
岡田です。
1 message
2001/04/26
[#29446] rb2html — 堀川 久 <vzw00011@...>
こんにちは。
10 messages
2001/04/29
[#29461] if 〜 elseif 〜 end — Hideto Kanoshima <kanokano@...4u.or.jp>
こんにちは。
7 messages
2001/04/30
[ruby-list:29397] rnet.rb 〜高レベルネットライブラリ〜
From:
rubikitch <rubikitch@...>
Date:
2001-04-24 17:32:21 UTC
List:
ruby-list #29397
るびきちです。
ネットを扱うクラスでちょっと高レベルなインターフェースが欲しかったので、
書いてみました。
net/* とは違ってURIで指定してあれこれするやつです。
現在はHTTPしか実装してませんが、FTPも仕様が決まれば簡単に
追加できるようになってるはずです。
#!/usr/bin/env ruby
=begin
= RNet
高レベルネットクラス。要uri.rb。
URIで指定してネットワークをいじくる。
== メソッド
--- RNet.new(arg)
RNetオブジェクトを作る。
argは文字列かURIオブジェクトでURIを指定。
URIによりスキームを決定し、それに応じたメソッドが使えるようになる。
=== HTTP
--- RNet.head(header0={})
HEADリクエストを発行。HTTPResponseオブジェクトを返す。
--- RNet.get(header0={})
GETリクエストを発行。HTTPResponseオブジェクトを返す。
--- RNet.post(data, header0={})
POSTリクエストを発行。dataは文字列かハッシュ。
HTTPResponseオブジェクトを返す。
=end
require 'net/http'
require 'uri'
require 'kconv'
require 'cgi'
class RNet
module Http
@@HeadHeader = {}
@@GetHeader = {
'Accept'=> 'text/*, image/*, audio/*, application/*',
'Accept-Language'=> 'ja; q=1.0, en; q=0.5',
}
@@PostHeader = {
'Accept'=> 'text/*, image/*, audio/*, application/*',
'Accept-Language'=> 'ja; q=1.0, en; q=0.5',
'Content-type'=>'application/x-www-form-urlencoded',
}
end
module Ftp
end
end
class RNet
def initialize(arg)
case arg
when URI
@uri = arg
when String
@uri = URI::create(arg)
else
raise TypeError, "RNet.new expected URI or String"
end
extend self.type.const_get(@uri.scheme.capitalize)
setup
end
################ HTTP
module Http
def setup
@host, @port, @path = @uri.host, @uri.port, @uri.path
@net = Net::HTTP::new @host, @port
end
private :setup
def head(header0={})
header = @@HeadHeader.dup.update(header0)
@net.head2 @path, header
end
def get(header0={})
header = @@GetHeader.dup.update(header0)
@net.get2(@path, header) do |res|
if res.code =~ /^3[0-9][0-9]$/
return RNet::new(res['location']).get(header0)
end
end
end
def hash2data(hash)
data = ''
hash.each_pair do |name, value|
case value
when Array
value.each do |vv|
data << "#{name}=#{CGI::escape(Kconv::tosjis vv)}&"
end
when NilClass
else
data << "#{name}=#{CGI::escape(Kconv::tosjis value)}&"
end
end
data.chop!
data
end
private :hash2data
def post(data, header0={})
case data
when String
datastr = data
when Hash
datastr = hash2data(data)
else
raise TypeError, "RNet#post: expected String or Hash!"
end
header = @@PostHeader.dup.update(header0)
@net.post2(@path, datastr, header) do |res|
if res.code =~ /^3[0-9][0-9]$/
return RNet::new(res['location']).get(header0)
end
end
end
end
end
if __FILE__ == $0
get = RNet::new('http://www.ruby-lang.org/en').get
get.body
p get.code
get.each do |h,v|
p [h,v]
end
end