最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

node后端與Vue前端跨域處理方法詳解

 更新時間:2022年08月31日 09:11:40   作者:黃鋼  
從目前我了解的情況來看,前后端跨域使用的方式有很多種,這里記錄我使用最順手的一種,即在后端使用cors跨域,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

node.js后端跨域解決方案

先看后端的入口文件:

app.js

const express = require('express');
const bodyParser = require('body-parser');
const cors = require('cors')
const expressJWT = require('express-jwt')
const app = express();
const users = require('./routes/users')
const config = require('./config')
app.use(expressJWT({secret: config.jwtSecretKey}).unless({path: [/^\/api\/users/]}))
// const db = require('./db/index')
app.use(cors())
app.use(express.urlencoded({extended: false}))
app.use(bodyParser.json())
app.get('/', (req, res) => {
    res.send('hello world !')
})
app.use('/api/users', users)
const testRouter = require('./routes/testToken')
app.use('/my', testRouter)
const profiles = require('./routes/profiles')
app.use('/api/profiles', profiles)
app.use((err, req, res, next) => {
    if (err) return res.send({status: 400, message: err})
    if(err.name === 'UnauthorizedError') return res.send({status: 404, message: '身份認(rèn)證失敗'})
    res.send({status: 404, message: err})
})
app.listen(5000, () => {
    console.log('api server running at http://127.0.0.1:5000')
})

代碼不少,但重要的就下面這幾行:

const cors = require('cors')
app.use(cors())

前提條件是你得先安裝了cors,這樣寫好之后,就保證你的后端接口可以跨域訪問了。

前端vue項目

前端要發(fā)起ajax請求,可以在入口文件main.js中全局掛載axios,而后端的接口則最好寫在axios.defaults.baseURL

main.js

import Vue from 'vue'
import App from './App.vue'
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
import router from './router'
import axios from './http'
Vue.use(ElementUI);
axios.defaults.baseURL = 'http://127.0.0.1:5000/api/'
Vue.prototype.$axios = axios;
Vue.config.productionTip = false
new Vue({
  router,
  render: h => h(App),
}).$mount('#app')

注意注意注意,最重要的代碼是:axios.defaults.baseURL = 'http://127.0.0.1:5000/api/'

這行代碼是前端項目能跨域的關(guān)鍵

注意import axios from './http'引入的是我自己寫的http.js

http.js

import axios from "axios";
import { Message, Loading } from 'element-ui';
let loading;
function startLoading(){
    loading = Loading.service({
        lock: true,
        text: '數(shù)據(jù)加載中',
        background: 'rgba(0,0,0,0.7)'
    })
}
function endLoading(){
    loading.close();
}
// 請求攔截
axios.interceptors.request.use(config => {
    startLoading();
    return config
}, error => {
    return Promise.reject(error)
})
//響應(yīng)攔截
axios.interceptors.response.use(response => {
    endLoading();
    return response
}, error => {
    endLoading();
    Message.error(error.response.data)
    return Promise.reject(error)
})
export default axios

這里寫了一些請求攔截和請求響應(yīng)的代碼,也可以不寫,主要是有一些請求的動畫。這個文件主要的作用是引入了axios

前端axios請求

  methods: {
    submitForm(formName) {
      this.$refs[formName].validate(valid => {
        if (valid) {
          this.$axios
            .post("/users/register", this.registerUser)
            .then(res => {
              // 注冊成功
              this.$message({
                message: "注冊成功!",
                type: "success"
              });
              // this.$router.push("/login");
            });
        } else {
          console.log("error submit!!");
          return false;
        }
      });
    }
  }

這就是常規(guī)的axios請求了

post("/users/register", this.registerUser)可以保證請求到http://127.0.0.1:5000/api//users/register中后端接口的數(shù)據(jù),這里是post請求,即向后端提交數(shù)據(jù)。

到此這篇關(guān)于node后端與Vue前端跨域處理方法詳解的文章就介紹到這了,更多相關(guān)node跨域內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 淺談HTTP 緩存的那些事兒

    淺談HTTP 緩存的那些事兒

    HTTP 緩存機制作為 Web 應(yīng)用性能優(yōu)化的重要手段,是想要成為前端架構(gòu)的必備技能。這篇文章主要介紹了淺談HTTP 緩存并用node實現(xiàn)緩存,非常具有實用價值,需要的朋友可以參考下
    2018-10-10
  • Yarn的安裝與使用詳細(xì)介紹

    Yarn的安裝與使用詳細(xì)介紹

    不知道大家有沒有覺察到Facebook近年大招頻出。Yarn是Facebook最近發(fā)布的一款依賴包安裝工具。Yarn是一個新的快速安全可信賴的可以替代NPM的依賴管理工具,Yarn正式發(fā)布沒幾天已經(jīng)迅速達到了數(shù)萬贊,就可以知道大家苦NPM久已。這篇文章將詳細(xì)介紹Yarn的安裝與使用。
    2016-10-10
  • express框架通過ejs模板渲染輸出頁面實例分析

    express框架通過ejs模板渲染輸出頁面實例分析

    這篇文章主要介紹了express框架通過ejs模板渲染輸出頁面的方法,結(jié)合實例形式分析了express框架使用ejs模版引擎渲染輸出的相關(guān)操作技巧與使用注意事項,需要的朋友可以參考下
    2023-05-05
  • NodeJS之優(yōu)缺點及適用場景討論

    NodeJS之優(yōu)缺點及適用場景討論

    這篇文章主要介紹了NodeJS之優(yōu)缺點及適用場景討論,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • NodeJS、NPM安裝配置步驟(windows版本) 以及環(huán)境變量詳解

    NodeJS、NPM安裝配置步驟(windows版本) 以及環(huán)境變量詳解

    本篇文章主要介紹了NodeJS、NPM安裝配置步驟(windows版本) 以及環(huán)境變量詳解,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • Node.js使用http模塊實現(xiàn)后臺服務(wù)器流程解析

    Node.js使用http模塊實現(xiàn)后臺服務(wù)器流程解析

    這篇文章將會教會你前端工程師怎么搭建后臺服務(wù)器,做自己的后端開發(fā),同時,在這篇文章開始你就開始正式進入全棧的道路咯!本片文章將細(xì)解http模塊,在開始前我們將復(fù)習(xí)一點計算機網(wǎng)絡(luò)的知識
    2022-09-09
  • Node.Js中實現(xiàn)端口重用原理詳解

    Node.Js中實現(xiàn)端口重用原理詳解

    這篇文章主要介紹了Node.Js中實現(xiàn)端口重用原理詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • 了不起的node.js讀書筆記之例程分析

    了不起的node.js讀書筆記之例程分析

    這篇文章主要介紹了了不起的node.js讀書筆記之例程分析,需要的朋友可以參考下
    2014-12-12
  • Express作者TJ告別Node.js奔向Go

    Express作者TJ告別Node.js奔向Go

    TJ自我介紹: TJ Holowaychuk ,程序員兼藝術(shù)家,Koa、Co、Express、jade、mocha、node-canvas、commander.js等知名開源項目的創(chuàng)建和貢獻者。
    2014-07-07
  • node.js讀取Excel數(shù)據(jù)(下載圖片)的方法示例

    node.js讀取Excel數(shù)據(jù)(下載圖片)的方法示例

    這篇文章主要給大家介紹了關(guān)于node.js讀取Excel數(shù)據(jù)(下載圖片)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用node.js具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-08-08

最新評論

怀来县| 武汉市| 太和县| 蛟河市| 略阳县| 聂荣县| 汶上县| 绥阳县| 屏东市| 林甸县| 新安县| 抚顺县| 当涂县| 长丰县| 获嘉县| 平顺县| 民乐县| 阜康市| 云安县| 万宁市| 汝城县| 新津县| 蕲春县| 成武县| 曲麻莱县| 抚宁县| 尼玛县| 兴国县| 嘉兴市| 陆良县| 兴山县| 安庆市| 湘阴县| 任丘市| 凤阳县| 太康县| 陆良县| 和政县| 新蔡县| 新丰县| 扶绥县|