Create HTTPS server with node js

I want to create a https server for my localhost.
Node JS documentation provides out of the box solution but I have some confusion with it. Example

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);

Or

var options = {
  pfx: fs.readFileSync('server.pfx')
};

Here how would I get key, cert or pfx for my localhost?

For development purposes you can create a self-certified certificate. Here's how to do it on a linux-based system:

First, generate a private key

openssl genrsa 1024 > key.pem

This will store a 1024 bit RSA key in the file key.pem

Then, generate an SSL certificate with that key:

openssl req -x509 -new -key key.pem > key-cert.pem

Now, you can use key.pem and key-cert.pem in the options you pass to createServer.

the .pfx file is a "bundle" maded of the key.pem , cert.pem and sometimes a (CA file) files.

You should get(pay) / make(testing etc) a https certificate.