亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在生產中運行 node.js REST API 應用程序

如何在生產中運行 node.js REST API 應用程序

九州編程 2021-11-12 18:17:50
好的,所以馬上我就覺得問這個問題有點愚蠢,但我對 node.js 應用程序有點陌生,所以請耐心等待。我已經在 node.js 中編寫了這個 REST API,它在我的本地機器上運行得很好。但是,當我使用 webpack 構建它時,我不太確定它應該如何實際運行。在本地,我有一個使用 Express 文件的 server.js,我開始使用 node.js 文件。但是我將如何運行構建版本?我確定答案很明顯,我只是沒有看到。我的目標是能夠在我的共享托管解決方案的子域上運行它,所以我有類似https://myapi.mydomain.com/getAListOfSomething/的示例端點的東西所以底線 - 我想使用 Webpack 來構建我的應用程序,然后將它部署到某個地方并像普通 API 一樣使用它。我只是不知道該怎么做。使用 React 應用程序之類的東西,這對我來說是完全顯而易見的(一個 index.html 文件,我的應用程序帶有腳本標簽,非常簡單)但是對于這樣的東西,我迷路了。所以這里有一些代碼......服務端JSconst routes = require('./routes/appRoutes.js');const express = require('express');const cors = require('cors');process.env.NODE_ENV = process.env.NODE_ENV || 'development';const envPath = process.env.NODE_ENV !== 'production' ? `.env.${process.env.NODE_ENV}` : '.env';const config = require('dotenv').config({path: envPath}); bodyParser = require('body-parser'); app = express(); port = process.env.PORT || 3001; app.use(cors()); app.listen(port); console.log(process.env.APP_NAME + ' started on port ' + port +' (yay!)'); app.use(bodyParser.urlencoded({ extended: true })); app.use(bodyParser.json()); routes(app); //register the route* WEBPACK.CONFIG.JS *const path = require('path');const ExtractTextPlugin = require('extract-text-webpack-plugin');const webpack = require('webpack');const nodeExternals = require('webpack-node-externals');process.env.NODE_ENV = process.env.NODE_ENV || 'development';const envPath = process.env.NODE_ENV !== 'production' ? `.env.${process.env.NODE_ENV}` : '.env';const config = require('dotenv').config({path: envPath});module.exports = (env) => {    const isProduction = env==='production';    return {        entry: './routes/appRoutes.js',        output: {            path: path.join(__dirname,'public','dist'),            filename: 'bundle.js'        },
查看完整描述

2 回答

?
拉丁的傳說

TA貢獻1789條經驗 獲得超8個贊

在您正在構建的 webpack 配置中,public/dist/應該有一個bundle.js可以運行。然后簡單地node bundle.js

對于節點項目來說,這似乎是一個奇怪的位置,但很容易改變。


查看完整回答
反對 回復 2021-11-12
?
RISEBY

TA貢獻1856條經驗 獲得超5個贊

鑒于部署應用程序的方法有很多種,這個問題很難回答。有谷歌云平臺、亞馬遜網絡服務、微軟 Azure、ZEIT Now、Heroku 等實體。所有這些都可以為您購買的域添加端點和證書。下面是幾個例子:

然后,您可以使用它配置的任何端點來訪問您的應用程序、API 等。


查看完整回答
反對 回復 2021-11-12
  • 2 回答
  • 0 關注
  • 155 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號