TodayILearn15



叱られるべき人==私
ううう
お父さんとお母さんは...
nodejsを勉強しています
第二節から勉強を再開します!
実はha 2から離れて...また来ます.名学習
プロミスはいつ書くべきか知っていますが、まだ勉強しています.
非同期ストリームはノードです.jsのコア!
node.jsを使うみたいですね?
=httpとapiを再学習します.
Node.js HTTP処理プロセスを理解する.
言語やプログラミング環境にかかわらず、HTTPリクエストの常識的な動作を理解する必要があります.
const http = require('http');
http.createServer((request, response) => {
 const { headers, method, url } = request;
 let body = [];
 request.on('error', (err) => {
   console.error(err);
 }).on('data', (chunk) => {
   body.push(chunk);
 }).on('end', () => {
   body = Buffer.concat(body).toString();
   // 여기서부터 새로운 부분입니다.

   response.on('error', (err) => {
     console.error(err);
   });

   response.statusCode = 200;
   response.setHeader('Content-Type', 'application/json');
   // 주의: 위 두 줄은 다음 한 줄로 대체할 수도 있습니다.
   // response.writeHead(200, {'Content-Type': 'application/json'})

   const responseBody = { headers, method, url, body };

   response.write(JSON.stringify(responseBody));
   response.end();
   // 주의: 위 두 줄은 다음 한 줄로 대체할 수도 있습니다.
   // response.end(JSON.stringify(responseBody))

   // 새로운 부분이 끝났습니다.
 });
}).listen(8080);

基本構文


サーバー・オブジェクトの作成
-> http.createServer();
->処理要求{メソッド,url,ヘッダ}=request;(割り当て構造分解…?)
->ヘッダグループ化プロセス
->post/put crudタスクのリクエストマスターの宣言
->要求オブジェクトストリームをハンドラに接続する
->ストリームにデータを登録し、endイベントにイベントリスナーを登録する
->データの受信

97 httpステータスコード


リンクテキスト
✍ 200 OK
✍ 202 Accepted
リクエストは受信されましたが、リクエストに応答できません.この応答は、後で処理要求の結果をHTTPに送信する非同期応答を明示していない.
✍ 404 Not Found
サーバに要求されたリソースが見つかりません.ブラウザは未知のURLを表します.

要求主体

let body = [];
request.on('data', (chunk) => {
  body.push(chunk);
}).on('end', () => {
  body = Buffer.concat(body).toString();
  // 여기서 `body`에 전체 요청 바디가 문자열로 담겨있습니다. 
  //버퍼를 하는 이유는?
});

エラーの概要

request.on('error', (err) => {
  // 여기서 `stderr`에 오류 메시지와 스택 트레이스를 출력합니다.
  console.error(err.stack);
});

明示的ヘッダデータ転送

response.writeHead(200, {
  'Content-Type': 'application/json',
  'X-Powered-By': 'bacon'
});

レスポンス本体転送


応答オブジェクトはWritableStreamであるため、クライアントに送信された応答ボディは通常のストリームメソッドを使用して作成されます.
response.write('<html>');
response.write('<body>');
response.write('<h1>Hello, World!</h1>');
response.write('</body>');
response.write('</html>');
response.end();
  • async awaitとaxiosの関係
  • を表示