Apollo에서도 express를 Middleware로 사용하여 같이 동작시키는 라이브러리(apollo-server-express)가 있으며, 해당 라이브러리 적용 후 https 설정 완료
const server = new ApolloServer({ typeDefs, resolvers });
const app = express();
const cors = require("cors");
app.use(cors({ origin: true, credentials: true }));
server.applyMiddleware({ app });
app.use(express.static("public"));
app.get("/", (req, res) => {
res.send("Hello, This is letter.");
});
http
.createServer(app)
.listen(4000, () => console.log(`🚀 Server ready at http://localhost:4000`));
if (env == "prd") {
const options = {
ca: fs.readFileSync(process.env.HTTPS_CA),
key: fs.readFileSync(process.env.HTTPS_KEY),
cert: fs.readFileSync(process.env.HTTPS_CERT),
};
https.createServer(options, app).listen(443);
}