回答編集履歴
6
脱字
test
CHANGED
@@ -10,7 +10,7 @@
|
|
10
10
|
|
11
11
|
|
12
12
|
|
13
|
-
ざっくり説明すると、jsは処理に時間が掛かる動作や関数を後回しにして、他の処理を先に行う性質があります。
|
13
|
+
ざっくり説明すると、Node.jsは処理に時間が掛かる動作や関数を後回しにして、他の処理を先に行う性質があります。
|
14
14
|
|
15
15
|
つまり、通常であれば上から下へ順番に処理されますが、ときどき順番を無視した処理が行われるのです。
|
16
16
|
|
5
誤字
test
CHANGED
@@ -38,7 +38,7 @@
|
|
38
38
|
|
39
39
|
}else if(pathName === '/api'){
|
40
40
|
|
41
|
-
const data = fs.readFileSync(dirname, 'utf-8')
|
41
|
+
const data = fs.readFileSync(`${__dirname}/data/data.jsone`, 'utf-8')
|
42
42
|
|
43
43
|
res.writeHead(200, {'Content-type': 'application/json'});
|
44
44
|
|
4
個人情報を載せてしまった
test
CHANGED
@@ -38,7 +38,7 @@
|
|
38
38
|
|
39
39
|
}else if(pathName === '/api'){
|
40
40
|
|
41
|
-
const data = fs.readFileSync(
|
41
|
+
const data = fs.readFileSync(dirname, 'utf-8')
|
42
42
|
|
43
43
|
res.writeHead(200, {'Content-type': 'application/json'});
|
44
44
|
|
3
情報追加
test
CHANGED
@@ -1,4 +1,6 @@
|
|
1
1
|
この問題の原因はjsの非同期的な動きによるものだと思います。
|
2
|
+
|
3
|
+
[参考サイト](https://qiita.com/YoshikiNakamura/items/732ded26c85a7f771a27)
|
2
4
|
|
3
5
|
[参考サイト](https://chuckwebtips.hatenablog.com/entry/2015/08/19/070000)
|
4
6
|
|
2
誤字
test
CHANGED
@@ -16,7 +16,7 @@
|
|
16
16
|
|
17
17
|
今回の場合ですと、``fs.readFile``関数が処理に時間がかかる関数です。
|
18
18
|
|
19
|
-
この関数内の処理を待っている間に、先に処理を進めてif分の終わりまで行きます。そして``res.end('Hello!');``
|
19
|
+
この関数内の処理を待っている間に、先に処理を進めてif分の終わりまで行きます。そして``res.end('Hello!');``を先に実行してしまうのです。
|
20
20
|
|
21
21
|
後から``res.end(data);``が実行されますが、すでにクライアントへ``res.end('Hello!');``でデータを渡しているため、jsonファイルは表示されません。
|
22
22
|
|
1
脱字
test
CHANGED
@@ -14,7 +14,7 @@
|
|
14
14
|
|
15
15
|
|
16
16
|
|
17
|
-
今回の場合ですと、``fs.read``関数が処理に時間がかかる関数です。
|
17
|
+
今回の場合ですと、``fs.readFile``関数が処理に時間がかかる関数です。
|
18
18
|
|
19
19
|
この関数内の処理を待っている間に、先に処理を進めてif分の終わりまで行きます。そして``res.end('Hello!');``まで先に到達しまうのです。
|
20
20
|
|