回答編集履歴
3
誤字訂正
answer
CHANGED
@@ -18,5 +18,5 @@
|
|
18
18
|
|
19
19
|
厳密には違います。
|
20
20
|
|
21
|
-
HTTP通信におけるデータは「HTTPヘッダ+空行+HTTPデ
|
21
|
+
HTTP通信におけるデータは「HTTPヘッダ+空行+HTTPボディ」となります。
|
22
|
-
HTTPヘッダは受け取ったが、HTTPデ
|
22
|
+
HTTPヘッダは受け取ったが、HTTPボディは読み込み中の状態と考えます。
|
2
追記
answer
CHANGED
@@ -11,4 +11,12 @@
|
|
11
11
|
1. (受け取るJSONデータのサイズが大きいときは特に、一度に全体を受信できないので)JSONを分割して少しずつ受け取る実装になっている。 ``data`` イベントが複数回発火して、受け取った一部分がコールバック関数に渡される。
|
12
12
|
3. 全ての受信を終えると ``end`` イベントが発火し、``rawData`` に構築されたJSONデータを利用できる。
|
13
13
|
|
14
|
-
※ dataイベント用のコールバック関数と、endイベント用のコールバック関数の両方から参照できるスコープ上に``rawData``が宣言されています。
|
14
|
+
※ dataイベント用のコールバック関数と、endイベント用のコールバック関数の両方から参照できるスコープ上に``rawData``が宣言されています。
|
15
|
+
|
16
|
+
追記)
|
17
|
+
> ステータスコードを表示させると200が返ってくるのでデータ自体は取得できているはずなのですが
|
18
|
+
|
19
|
+
厳密には違います。
|
20
|
+
|
21
|
+
HTTP通信におけるデータは「HTTPヘッダ+空行+HTTPデータ」となります。
|
22
|
+
HTTPヘッダは受け取ったが、HTTPデータは読み込み中の状態と考えます。
|
1
訂正
answer
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
> JSON.parse(data || "null")と書き換えても解決しませんでした
|
2
2
|
|
3
|
-
ご質問のコード内の仮引数 ``data`` は JSON全体ではなく、通信の過程で受け取るJSONの一部分になります。
|
3
|
+
ご質問のコード内の仮引数 ``data`` は JSON全体ではなく、通信の過程で受け取るJSONの一部分になります。
|
4
|
+
(``chunk``:チャンクと命名する人もいます)
|
4
5
|
|
5
6
|
----
|
6
|
-
HTTPS モジュールは HTTPモジュールに似た実装なので、
|
7
|
-
[Http#get()](https://nodejs.org/api/http.html#http_http_get_options_callback)の「JSON fetching example:」として示されるサンプルコードを参考にしてください。
|
7
|
+
HTTPS モジュールは HTTPモジュールに似た実装なので、公式ドキュメント [Http#get()](https://nodejs.org/api/http.html#http_http_get_options_callback)の「**JSON fetching example:**」として示されるサンプルコードを参考にしてください。
|
8
8
|
|
9
9
|
|
10
10
|
サンプルコードから読み取れるのは、
|
11
|
-
1. (受け取るJSONデータのサイズが大きいときは特に、一度に全体を受信できないので)JSON
|
11
|
+
1. (受け取るJSONデータのサイズが大きいときは特に、一度に全体を受信できないので)JSONを分割して少しずつ受け取る実装になっている。 ``data`` イベントが複数回発火して、受け取った一部分がコールバック関数に渡される。
|
12
|
-
3. 全ての受信を終えると ``end`` イベントが発火し、``rawData`` に
|
12
|
+
3. 全ての受信を終えると ``end`` イベントが発火し、``rawData`` に構築されたJSONデータを利用できる。
|
13
13
|
|
14
14
|
※ dataイベント用のコールバック関数と、endイベント用のコールバック関数の両方から参照できるスコープ上に``rawData``が宣言されています。
|