Node.js v0.4.12 Manual & Documentation


Table Of Contents


HTTPS

HTTPS は TLS/SSL 上の HTTP プロトコルです。 Node ではこれらは別のモジュールとして実装されています。

https.Server

このクラスは tls.Server のサブクラスで、http.Server と同様のイベントを生成します。 より詳しくは http.Server を参照してください。

https.createServer(options, [requestListener])

新しい HTTPS Web サーバオブジェクトを返します。 optiontls.createServer() と同じです。 requestListener は関数で、 'request' イベントに自動的に追加されます。

例:

// curl -k https://localhost:8000/
var https = require('https');
var fs = require('fs');

var options = {
  key: fs.readFileSync('test/fixtures/keys/agent2-key.pem'),
  cert: fs.readFileSync('test/fixtures/keys/agent2-cert.pem')
};

https.createServer(options, function (req, res) {
  res.writeHead(200);
  res.end("hello world\n");
}).listen(8000);

https.request(options, callback)

セキュアな Web サーバへのリクエストを作成します。 http.request() と同様のオプションが指定できます。

例:

var https = require('https');

var options = {
  host: 'encrypted.google.com',
  port: 443,
  path: '/',
  method: 'GET'
};

var req = https.request(options, function(res) {
  console.log("statusCode: ", res.statusCode);
  console.log("headers: ", res.headers);

  res.on('data', function(d) {
    process.stdout.write(d);
  });
});
req.end();

req.on('error', function(e) {
  console.error(e);
});

options 引数は以下のオプションを持ちます。

https.get(options, callback)

http.get() と同様ですが HTTPS です。

例:

var https = require('https');

https.get({ host: 'encrypted.google.com', path: '/' }, function(res) {
  console.log("statusCode: ", res.statusCode);
  console.log("headers: ", res.headers);

  res.on('data', function(d) {
    process.stdout.write(d);
  });

}).on('error', function(e) {
  console.error(e);
});