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

通過(guò)vue如何設(shè)置header

 更新時(shí)間:2023年02月23日 10:33:25   作者:三知之靈  
這篇文章主要介紹了通過(guò)vue如何設(shè)置header,每個(gè)項(xiàng)目都有頭部但是內(nèi)容不一樣;這種情況我們可以考慮在app.vue中創(chuàng)建公共頭部,那么怎么配置公共頭部header,下面小編通過(guò)實(shí)例代碼詳細(xì)講解,需要的朋友可以參考下

vue設(shè)置header

使用vue-resource與vue-cookie實(shí)現(xiàn)頁(yè)面登錄,數(shù)據(jù)存儲(chǔ)與后臺(tái)的數(shù)據(jù)交互

后端交互對(duì)vue中contentType,和ajax的contentType區(qū)別對(duì)待

this.$http
        .post(netUrl, change, {
          headers: {
            Authorization: "Bearer " + this.$cookies.get("token")
          }
        })
        .then(
          response => {
            console.log(response.data);
            if (response.data != null) {
            }
          },
          response => {
            console.log("error");
          }
        );

當(dāng)服務(wù)器端需要設(shè)置contentType:“application/json”:

如果采用的是傳統(tǒng)的$.ajax方式進(jìn)行交互時(shí)設(shè)置contentType:"application/json;charset=UTF-8"也會(huì)導(dǎo)致服務(wù)器訪問(wèn)不成功必須嚴(yán)格設(shè)置為contentType:“application/json”;

在這里插入圖片描述

當(dāng)使用vue中的vue-resource方式交互時(shí),即使不設(shè)置contentType:"application/json"也可成功交互;

vue方式交互

為什么ajax要求那么嚴(yán)格,原因還不是很清楚;
但是我們可以通過(guò)以上方式:每個(gè)http請(qǐng)求中加入以下代碼,進(jìn)行設(shè)置請(qǐng)求頭

 headers: {
    Authorization: "Bearer " + this.$cookies.get("token")
  }

全局設(shè)置請(qǐng)求頭

雖然上述方式可以成功的設(shè)置請(qǐng)求頭,但是每個(gè)請(qǐng)求都設(shè)置顯得繁瑣,而從網(wǎng)上查找解決方案始終沒(méi)有成功解決
解決問(wèn)題的主要思路:

1.使得請(qǐng)求頭中存在token

在這里插入圖片描述

網(wǎng)上提供方式:

Vue.http.interceptors.push((request, next) => {
      // ...
      // 請(qǐng)求發(fā)送前的處理邏輯
     request.beforeSend = function() {
             request.headers['token'] = “token”;
     }
  next((response) => {
      // ...
      // 請(qǐng)求發(fā)送后的處理邏輯
      // ...
      // 根據(jù)請(qǐng)求的狀態(tài),response參數(shù)會(huì)返回給successCallback或errorCallback
      return response
  })

測(cè)試后發(fā)現(xiàn)用以上攔截器的方式不可行,查到網(wǎng)上有說(shuō)可以嘗試

request.headers.set('token', "Bearer ")

方式,但是測(cè)試后發(fā)現(xiàn)仍行不通,通過(guò)各種嘗試最后發(fā)現(xiàn)是去除request.beforeSend直接設(shè)置皆可以

Vue.http.interceptors.push((request, next) => {
  // 請(qǐng)求發(fā)送前的處理邏輯
  request.headers.set('token', "Bearer ")
  next((response) => {
    // 請(qǐng)求發(fā)送后的處理邏輯
    // 根據(jù)請(qǐng)求的狀態(tài),response參數(shù)會(huì)返回給successCallback或errorCallback
    return response
  })
})

如何獲取真實(shí)的token,

因?yàn)槿衷O(shè)置是在main.js中,而token是在登錄后才存儲(chǔ)下來(lái)的能否獲取到真實(shí)值
1.確保你的token確實(shí)存在
2.正常程序中通過(guò)this.$cookies.get(“token”)可以獲取token的值,因?yàn)閷?duì)vue的認(rèn)知不夠深,不知道在入口文件處如何獲取token值,通過(guò)多次測(cè)試獲取解決方案

import Vue from 'vue'
import VueCookies from 'vue-cookies'
Vue.use(VueCookies);
Vue.http.interceptors.push((request, next) => {
  // 請(qǐng)求發(fā)送前的處理邏輯
  request.headers.set('Authorization', "Bearer " + VueCookies.get("token"))
  next((response) => {
    // 請(qǐng)求發(fā)送后的處理邏輯
    // 根據(jù)請(qǐng)求的狀態(tài),response參數(shù)會(huì)返回給successCallback或errorCallback
    return response
  })
})

擴(kuò)展:vue 配置公共頭部(header)

需求:整個(gè)項(xiàng)目;每個(gè)項(xiàng)目都有頭部 但是內(nèi)容不一樣;這種情況我們可以考慮在app.vue中創(chuàng)建公共頭部;

App.vue

<template>
  	<div id="app">
	    <div class="header" v-if="isShowHeader" id="headers">
                <span class="title-info">
                        {{headerTitle}}
                 </span> 
	     </div>
	</div>
</template>
<script>
import { mapState } from "vuex";
import home from "../src/components/home";
 
export default {
  name: "App",
  data() {
    return {
 
    };
  },
  computed: {
    // 存儲(chǔ)到store狀態(tài)管理中
    ...mapState({
      headerTitle: state => state.$vux.headerTitle,
    })
  },
 
};
</script>

store.js

    import Vue from 'vue'
    import Vuex from 'vuex'
 
    Vue.use(Vuex)
    const store = new Vuex.Store({  })
    store.registerModule('$vux', { // 名字自己定義
        state: {//設(shè)置屬性
            headerTitle:'',
        },
        getters:{ // getters 用來(lái)獲取sate里面存儲(chǔ)的數(shù)據(jù)
 
        },
         mutations: {//更改屬性的狀態(tài)//返回來(lái)會(huì)有兩個(gè)狀態(tài)一個(gè)是上面的state,還有一個(gè)是返回來(lái)的狀態(tài)(形參),返回之后將我們請(qǐng)求回來(lái)的數(shù)據(jù)賦給state
                 getHeaderTitle(state, obj) {
                state.headerTitle = obj.headerTitle
            },
        }
 
    export default store

main.js

//全局配置
import Vue from "vue";
import App from "./App";
import router from "./router";
 
  store.commit("getHeaderTitle", { headerTitle: to.meta.title });

router.js

import Vue from 'vue'
import Router from 'vue-router'
Vue.use(Router)
 
export default new Router({
  // mode: "history",
  linkActiveClass: "on",
     routes: [
        {
          path: "/business",
          name: "business",
          component: business,
          meta: {
            title: "粵警監(jiān)管", // 添加該字段,表示進(jìn)入這個(gè)路由是需要登錄的
            keepAlive: true
          }
        },
    ]
})

到此這篇關(guān)于通過(guò)vue如何設(shè)置header的文章就介紹到這了,更多相關(guān)vue設(shè)置header內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue.js根據(jù)圖片url進(jìn)行圖片下載

    vue.js根據(jù)圖片url進(jìn)行圖片下載

    最近在做一個(gè)前端vue.js對(duì)接的功能模塊時(shí),需要實(shí)現(xiàn)一個(gè)下載圖片的功能,本文就介紹了vue.js根據(jù)圖片url進(jìn)行圖片下載,感興趣的可以了解一下
    2021-06-06
  • Vue常用API、高級(jí)API的相關(guān)總結(jié)

    Vue常用API、高級(jí)API的相關(guān)總結(jié)

    這篇文章主要介紹了Vue常用API、高級(jí)API的相關(guān)總結(jié),幫助大家更好的理解和學(xué)習(xí)使用vue框架,感興趣的朋友可以了解下
    2021-02-02
  • Vue實(shí)現(xiàn)倒計(jì)時(shí)小功能

    Vue實(shí)現(xiàn)倒計(jì)時(shí)小功能

    這篇文章主要為大家詳細(xì)介紹了Vue實(shí)現(xiàn)倒計(jì)時(shí)小功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • SpringBoot實(shí)現(xiàn)全局和局部跨域的兩種方式

    SpringBoot實(shí)現(xiàn)全局和局部跨域的兩種方式

    本文主要介紹了SpringBoot實(shí)現(xiàn)全局和局部跨域的兩種方式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • vue實(shí)現(xiàn)移動(dòng)端懸浮窗效果

    vue實(shí)現(xiàn)移動(dòng)端懸浮窗效果

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)移動(dòng)端懸浮窗效果,vuejs實(shí)現(xiàn)div拖拽移動(dòng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • 手把手教你搭建vue3.0項(xiàng)目架構(gòu)

    手把手教你搭建vue3.0項(xiàng)目架構(gòu)

    這篇文章手把手教你搭建vue3.0項(xiàng)目架構(gòu),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2021-11-11
  • vue項(xiàng)目中使用tinymce編輯器的步驟詳解

    vue項(xiàng)目中使用tinymce編輯器的步驟詳解

    本文分步驟給大家介紹了vue項(xiàng)目中使用tinymce編輯器的方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-09-09
  • Vue實(shí)現(xiàn)登錄記住賬號(hào)密碼功能的思路與過(guò)程

    Vue實(shí)現(xiàn)登錄記住賬號(hào)密碼功能的思路與過(guò)程

    最近在學(xué)習(xí)vue,發(fā)現(xiàn)了vue的好多坑,下面這篇文章主要給大家介紹了關(guān)于Vue實(shí)現(xiàn)登錄記住賬號(hào)密碼功能的思路與過(guò)程,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2021-11-11
  • vue虛擬滾動(dòng)/虛擬列表簡(jiǎn)單實(shí)現(xiàn)示例

    vue虛擬滾動(dòng)/虛擬列表簡(jiǎn)單實(shí)現(xiàn)示例

    本文主要介紹了vue虛擬滾動(dòng)/虛擬列表簡(jiǎn)單實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2025-01-01
  • vue 中的 render 函數(shù)作用詳解

    vue 中的 render 函數(shù)作用詳解

    這篇文章主要介紹了vue 中的 render 函數(shù)作用,通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-02-02

最新評(píng)論

常宁市| 大港区| 蒙阴县| 上蔡县| 台中县| 房产| 买车| 蒙自县| 中西区| 海原县| 城固县| 台山市| 苍梧县| 囊谦县| 安达市| 滕州市| 大埔县| 洱源县| 连山| 彰武县| 包头市| 长宁区| 扎赉特旗| 铜梁县| 天峨县| 浙江省| 三都| 崇义县| 东源县| 东安县| 杂多县| 酒泉市| 岑溪市| 依安县| 浪卡子县| 旬阳县| 九龙坡区| 建德市| 重庆市| 津市市| 色达县|