我是一名新的前端开发人员,我正在尝试设置一个新的 HTTPS 环境。我按照 https.createServer([options][, requestlistener]) 部分下的 a link 的说明进行操作。但不知怎的,它给了我一个 https.createServer 不是函数的错误。有人可以帮我解答这个问题吗?
我使用browserify来编译:
$npm install browserify --save
$browserify test.js -o bundle.js -t brfs
以下是我的代码(test.js):
var fs = require('fs'),
https = require('https')
var options = {
ca: fs.readFileSync('ca.pem', 'utf8'),
cert: fs.readFileSync('cert.pem', 'utf8'),
rejectUnauthorized: true
};
httpsServer = https.createServer(options, (req,res) => {
res.writeHead(200);
res.end('hello world\n');
}).listen(443);
以及我收到的错误:
Uncaught TypeError: https.createServer is not a function
我还尝试了很多其他方法,包括使用
var express = require('express'),
app = express()
最终它给了我另一个错误:
TypeError: Cannot read property 'prototype' of undefined
您提供的链接给出了这个例子:
const https = require('node:https');
const fs = require('node:fs');
const options = {
key: fs.readFileSync('test/fixtures/keys/agent2-key.pem'),
cert: fs.readFileSync('test/fixtures/keys/agent2-cert.pem'),
};
https.createServer(options, (req, res) => {
res.writeHead(200);
res.end('hello world\n');
}).listen(8000);
将
https = require('https')
更改为 const https = require('node:https')
应该可以解决问题。