<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      vue 封裝axios請求

       

       

       以上為封裝用到的文件:

      1:.vue 頁面  請求接口:

        import { getAll } from "@/api/httpPost"  //需要引入接口統一配置文件

        export default {
          
          data() {
            return {
              datainfo:{
                          key:value
                    }
            }
          }
          mounted() {
            getAll(this.datainfo).then(res => {  //datainfo 為data里面的數據對象體
                      console.log(res)  //res 為接口返回的數據體
                  })
          }
        }
        
      2:httpPost.js  把項目用到的接口請求統一放入一個文件,方便接口地址維護
        
        import request from '@/utils/request'  //引入request.js   axios請求文件

        //獲取所有菜單
        export function getAll(data) {  //data 為請求參數對象
            return request({
              url: '/services/hos/getAll',  //基礎url地址
              method: 'post',
              data:data  //data 為請求參數對象
            })
         }
       
      3:request.js 文件  最終的axios請求 
      import vue from "vue";
      import axios from "axios";
      
      const service = axios.create({
        timeout: 5000 // request timeout
      });
      
      // request interceptor
      service.interceptors.request.use(
        config => {
          // 請求體數據添加 基礎訪問url
          if (config) {
            config = {
              ...config,
              baseURL: vue.prototype.appConfig.SERVER_ADDRESS  //寫在config.json 配置文件里面的后端ip端口號地址
            };
            // 請求體數據添加 Token
            if (config.data && !(config.data instanceof FormData)) {
              const formData = new FormData()
              if (!config.data.sessionId) {
              //   config.data.sessionId = getToken()
              }
              formData.append("requestJson", JSON.stringify({ ...config.data }))
              // config.data = formData   
              config.data = "requestJson="+JSON.stringify(config.data)    //針對后端 @FormParam(value = "requestJson") 格式接收參數
                                                                          //如果是@requestBody 則 config.data = config.data   或者不需要多余的步驟
            } else if (config.data instanceof FormData) {
              const formData = new FormData()
              if (!config.data.has("sessionId")) {
              //   config.data.append("sessionId", getToken())
              }
              formData.append("requestJson", JSON.stringify({ ...config.data }))
              config.data = formData
            } else {
              const formData = new FormData()
              if (config.data) {
                if (!config.data.sessionId) {
                  // config.data.sessionId = getToken()
                }
              } else {
              //   config.data = { sessionId: getToken() }
              }
              formData.append("requestJson", JSON.stringify({ ...config.data }))
              config.data = formData
            }
          }
          return config;
        },
        error => {
          return Promise.reject(error);
        }
      );
      
      // response interceptor
      //接口返回
      service.interceptors.response.use(
      
        response => {
          const res = response.data;
          // if the custom code is not 20000, it is judged as an error.
          if (res.code !== 20000 && response.status !== 200) {
          //   Message({
          //     message: res.message || "Error",
          //     type: "error",
          //     duration: 5 * 1000
          //   });
      
            // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
            if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
              // to re-login
              // MessageBox.confirm(
              //   "You have been logged out, you can cancel to stay on this page, or log in again",
              //   "Confirm logout",
              //   {
              //     confirmButtonText: "Re-Login",
              //     cancelButtonText: "Cancel",
              //     type: "warning"
              //   }
              // ).then(() => {
              //   store.dispatch("user/resetToken").then(() => {
              //     location.reload();
              //   });
              // });
            }
            return Promise.reject(new Error(res.message || "Error"));
          } else {
            return res;
          }
        },
        error => {
          return Promise.reject(error);
        }
      );
      
      export default service;

      4:config.json IP端口號 配置文件

      {
          "http://": "后臺服務地址",
          "SERVER_ADDRESS": "http://192.168.22.54:8081",
          "SERVER_URL": "http://test.00.cn"
        }
       

        

        

        

      posted @ 2021-12-02 14:53  _情書  閱讀(434)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 白嫩人妻精品一二三四区| 动漫精品中文字幕无码| 黑人玩弄人妻中文在线| 中文字幕日韩人妻一区| 久久99精品国产麻豆婷婷| 秋霞电影院午夜无码免费视频| 国产区图片区小说区亚洲区| 蜜桃一区二区三区免费看| 亚洲女人的天堂在线观看| 成人无码一区二区三区网站| 亚洲精品自拍在线视频| 国模肉肉视频一区二区三区| 亚洲精品国产自在现线最新| 日韩丝袜欧美人妻制服| 一本一道av无码中文字幕﹣百度| 日韩av天堂综合网久久| 亚洲日韩精品无码一区二区三区| 熟妇人妻av无码一区二区三区| 国产成人永久免费av在线| 五月丁香啪啪| 丁香婷婷综合激情五月色| 亚洲av色在线播放一区| 日本高清视频网站www| 奶头又大又白喷奶水av| 国产蜜臀av在线一区二区| 在线高清免费不卡全码| 国产仑乱无码内谢| 成人自拍小视频免费观看| 中文字幕在线国产精品| 国产精品毛片无遮挡高清| av中文字幕一区人妻| 国产成人久久精品流白浆| 最近中文字幕日韩有码| 久久久久无码中| 人妻丝袜无码专区视频网站| 亚洲色大成网站WWW永久麻豆| 国产三级黄色的在线观看| 亚洲精品网站在线观看不卡无广告| 国产黑色丝袜在线播放| 人成午夜大片免费视频77777| 中文字幕一区日韩精品|