日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

express解決跨域問題 express跨域設置


express解決跨域問題 express跨域設置


一、安裝express庫和生成器打開cmd輸入命令: yarn global add express express-generator
解釋: 上面里兩個模塊分別表示庫和生成器,在express3時,安裝express會自動的給你安裝生成器express-generator ,但是在express4時,他們就被分開了,所以需要分別安裝 。
安裝好后可以通過命令:express –version 檢查是否安裝成功 。
出現(xiàn)版本號即為安裝成功(如下圖所示) 。
二、express生成器自動創(chuàng)建express項目輸入命令:express nodejs(如下圖所示即為成功)
成功之后的目錄:
三、跳轉到package.json目錄下安裝相關的包輸入命令: yarn 或者 cnpm i 或者 npm i
四、啟動項目【express解決跨域問題 express跨域設置】輸入命令:npm run start
打開瀏覽器,訪問127.0.0.1:3000就能獲取訪問我們的項目了
五、項目目錄解釋
bin:存放可執(zhí)行文件
public:存放js、css、img等文件
router:存放路由文件
views:存放視圖文件或者說模版文件
app.js:啟動文件(入口文件)
package.json:存儲著工程的信息及模塊依賴,當在 dependencies 中添加依賴的模塊時,運行 npm install,npm 會檢查當前目錄下的 package.json,并自動安裝所有指定的模塊
node_modules:存放 package.json 中安裝的模塊,當你在 package.json 添加依賴的模塊并安裝后,存放在這個文件夾下
參考鏈接:
www.cnblogs.com/shimily/art…
六、在此項目中如何開發(fā)首先在routes中新建一個test.js文件
var express = require('express');var router = express.Router();router.get('/', function (req, res, next) { res.send('我是接口返回值');});module.exports = router;復制代碼然后在app.js中加入下面代碼
var testRouter = require(‘./routes/test’);
app.use(‘/test’, testRouter);
然后打開瀏覽器控制臺用fetch請求我們剛才寫的接口
fetch('http:localhost:3000/test').then(res=>{return res.text()}).then(res=>{console.log(res)})復制代碼我們發(fā)現(xiàn)出現(xiàn)了跨域問題,這是因為我們在nodejs中沒有添加跨域所導致的 。
將下面的跨域的代碼添加到app.js中
//設置跨域訪問(設置在所有的請求前面即可)app.all("*", function (req, res, next) { //設置允許跨域的域名,*代表允許任意域名跨域 res.header("Access-Control-Allow-Origin", "*"); //允許的header類型 res.header("Access-Control-Allow-Headers", "content-type"); //跨域允許的請求方式res.header("Access-Control-Allow-Methods", "DELETE,PUT,POST,GET,OPTIONS"); if (req.method == 'OPTIONS')res.sendStatus(200); //讓options嘗試請求快速結束 elsenext();});復制代碼然后重啟一下項目,這樣就可以正常訪問了
在項目中修改了內容就需要我們手動重啟項目,有點麻煩,我們再安裝一個插件即可解決這個煩惱 。
七、使用nodemon自動重啟服務
  1. 安裝nodemon模塊
輸入命令:npm i nodemon -S
  1. 創(chuàng)建nodemon.json文件
在項目的根目錄下創(chuàng)建:nodemon.json文件
{ "restartable": "rs", "ignore": [".git", ".svn", "node_modules/**/node_modules"], "verbose": true, "execMap": {"js": "node --harmony" }, "watch": [], "env": {"NODE_ENV": "development" }, "ext": "js json njk css js "}復制代碼
  1. 使用nodemon模塊
在你的package.json文件中,添加一行腳本代碼
“dev”: “nodemon ./bin/www”

    推薦閱讀