【Node.js】https.createServer

  • このエントリーをはてなブックマークに追加

Node.js v18.16.1
https.createServerについて書いていく。



HTTPS | Node.js v18.16.1 Documentation (nodejs.org) ExternalLink ここから–
https.createServer([options][, requestListener])
options <Object> Accepts options from tls.createServer(), tls.createSecureContext() and http.createServer().
requestListener <Function> A listener to be added to the ‘request’ event.
Returns:<https.Server>

Class: https.Server
Added in: v0.3.4
Extends:<tls.Server>
HTTPS | Node.js v18.16.1 Documentation (nodejs.org) ExternalLink ここまで–

引数のoptionsとrequestListenerは任意である。
しかし、optionsに設定しないとhttps通信できないはずなんだけどな。
「options <Object> Accepts options from tls.createServer(), tls.createSecureContext() and http.createServer().」を日本語に訳すと「options <Object>:tls.createServer()、tls.createSecureContext()、およびhttp.createServer()からのオプションを受け入れます。」
つまり、optionsにはTLS(Transport Layer Security)を使用してセキュアな通信を確立するため、TLS に関連するオプションを受け入れることを意味している。具体的には、秘密鍵やサーバー証明書の指定が可能。
「Returns:<https.Server>」というのは、https.createServer()メソッドが https.Server のインスタンスを返すことを示している。
https.Serverはクラスである。
https.ServerクラスはNode.jsのバージョン v0.3.4で追加された。これは Node.jsの初期のバージョンのひとつである。




const hostname = '192.168.2.100';
const port = 3000;
// 秘密鍵ファイルを指定する
const sslServerKey = '0322/server-key.pem';
// 自己署名証明書(オレオレ証明書)
const sslServerCrt = '0322/server-crt.pem';
const fs = require('fs');
const options = {
  key: fs.readFileSync(sslServerKey),
  cert: fs.readFileSync(sslServerCrt)
};
const https = require('https');
const server = https.createServer(options);

server.listen(port, hostname,() => {
  console.log(`Server running at https://${hostname}:${port}/`);
});

  • このエントリーをはてなブックマークに追加

SNSでもご購読できます。

コメントを残す

*