2
私の例では、単純なHTTPサーバです:クライアントが接続すると、変数は、クライアントがクッキーを持っているかどうかによってノードの順序規則(同期/非同期)について混乱
http.createServer((req, res) => {
if(req.method === `GET`){
if(req.headers.cookie === undefined){
let x = 1
let y = 2
let z = 30
}
else{
let x = 10
let y = 20
let z = 3
}
switch(req.url){
case `/`:
// >>>> I need the appropriate variables here for the same client <<<<
break
case `/page`:
// >>>> or here <<<<
break
default:
res.statusCode = 404
res.end(`Error 404`)
}
}
}).listen(3000)
定義されています。しかし、複数のクライアントがほぼ同時に接続するとどうなりますか? Nodeはそれをどのように扱いますか?
スイッチの前にif/elseステートメントが発生するため、クライアントが混在した変数を取得する可能性はありますか?代わりに、if/elseの各部分にスイッチのコピーを2つ配置する必要がありますか?
違いはありませんか?