回答編集履歴
1
コメントを受けての追記
test
CHANGED
@@ -7,3 +7,69 @@
|
|
7
7
|
勘違いがあるようです。`open`で指定するのはサーバー側のポート番号です。
|
8
8
|
|
9
9
|
クライアント側のポート番号は、空いている番号から適当に割り当てされます。
|
10
|
+
|
11
|
+
|
12
|
+
|
13
|
+
#追記
|
14
|
+
|
15
|
+
動くように書き換えると、こうです。
|
16
|
+
|
17
|
+
・`(CR+LF)`を全部削除
|
18
|
+
|
19
|
+
・行頭の空白を削除
|
20
|
+
|
21
|
+
・最後に空行を追加
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
```Ruby
|
26
|
+
|
27
|
+
require 'socket'
|
28
|
+
|
29
|
+
post = TCPSocket.open("www.metro.tokyo.jp",80)
|
30
|
+
|
31
|
+
|
32
|
+
|
33
|
+
post.write('GET / HTTP/1.1
|
34
|
+
|
35
|
+
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3
|
36
|
+
|
37
|
+
Accept-Encoding: gzip, deflate
|
38
|
+
|
39
|
+
Accept-Language: ja,en-US;q=0.9,en;q=0.8
|
40
|
+
|
41
|
+
Cache-Control: max-age=0
|
42
|
+
|
43
|
+
Connection: keep-alive
|
44
|
+
|
45
|
+
Host: www.metro.tokyo.jp
|
46
|
+
|
47
|
+
If-Modified-Since: Thu, 25 Jul 2019 08:36:32 GMT
|
48
|
+
|
49
|
+
Referer: https://www.google.com/
|
50
|
+
|
51
|
+
Upgrade-Insecure-Requests: 1
|
52
|
+
|
53
|
+
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36
|
54
|
+
|
55
|
+
|
56
|
+
|
57
|
+
')
|
58
|
+
|
59
|
+
|
60
|
+
|
61
|
+
while a = post.gets
|
62
|
+
|
63
|
+
puts a
|
64
|
+
|
65
|
+
end
|
66
|
+
|
67
|
+
|
68
|
+
|
69
|
+
post.close
|
70
|
+
|
71
|
+
```
|
72
|
+
|
73
|
+
`If-Modified-Since: Thu, 25 Jul 2019 08:36:32 GMT`
|
74
|
+
|
75
|
+
が付いているので、「その日時以降、変わってないよ」という`HTTP/1.0 304 Not Modified`が返ってきます。
|