当前位置: 首页 > news >正文

粘贴以下代码到网站首页代码的与标签之间台州建设信息港网站

粘贴以下代码到网站首页代码的与标签之间,台州建设信息港网站,万维网域名注册网站,如何做企业网站加vvue3若依框架前端打包部署到服务器#xff0c;需要部署到多个服务器上#xff0c;每次打包会很麻烦#xff0c;今天教大家一个动态配置请求头api的方法#xff0c;部署后能动态获取(修改)对应服务器的请求ip 介绍两种方法#xff0c;如有需要可以直接尝试步骤一#xff…vue3若依框架前端打包部署到服务器需要部署到多个服务器上每次打包会很麻烦今天教大家一个动态配置请求头api的方法部署后能动态获取(修改)对应服务器的请求ip 介绍两种方法如有需要可以直接尝试步骤一不行再用步骤二 方法一 、 只需要在request中获取地址栏的信息不用新建文件 获取地址栏的http请求头 var baseUrlDt window.location.protocol // window.location.hostname :8010; let downloadLoadingInstance; // 动态ip打包时使用这条代码 request.js全部代码 import axios from axios; import {ElNotification,ElMessageBox,ElMessage,ElLoading, } from element-plus; import { getToken } from /utils/auth; import errorCode from /utils/errorCode; import { tansParams, blobValidate } from /utils/ruoyi; import cache from /plugins/cache; import { saveAs } from file-saver; import useUserStore from /store/modules/user;var baseUrlDt window.location.protocol // window.location.hostname :8010; let downloadLoadingInstance; // 动态ip打包时使用这条代码// 是否显示重新登录 export let isRelogin { show: false };axios.defaults.headers[Content-Type] application/json;charsetutf-8; // 创建axios实例 const service axios.create({// axios中请求配置有baseURL选项表示请求URL公共部分// baseURL: import.meta.env.VITE_APP_BASE_API,baseURL: baseUrlDt, // 动态ip打包时使用这条代码// 超时timeout: 10000, });// request拦截器 service.interceptors.request.use((config) {// 是否需要设置 tokenconst isToken (config.headers || {}).isToken false;// 是否需要防止数据重复提交const isRepeatSubmit (config.headers || {}).repeatSubmit false;if (getToken() !isToken) {config.headers[Authorization] Bearer getToken(); // 让每个请求携带自定义token 请根据实际情况自行修改}// get请求映射params参数if (config.method get config.params) {let url config.url ? tansParams(config.params);url url.slice(0, -1);config.params {};config.url url;}if (!isRepeatSubmit (config.method post || config.method put)) {const requestObj {url: config.url,data:typeof config.data object? JSON.stringify(config.data): config.data,time: new Date().getTime(),};const requestSize Object.keys(JSON.stringify(requestObj)).length; // 请求数据大小const limitSize 5 * 1024 * 1024; // 限制存放数据5Mif (requestSize limitSize) {console.warn([${config.url}]: 请求数据大小超出允许的5M限制无法进行防重复提交验证。);return config;}const sessionObj cache.session.getJSON(sessionObj);if (sessionObj undefined ||sessionObj null ||sessionObj ) {cache.session.setJSON(sessionObj, requestObj);} else {const s_url sessionObj.url; // 请求地址const s_data sessionObj.data; // 请求数据const s_time sessionObj.time; // 请求时间const interval 1000; // 间隔时间(ms)小于此时间视为重复提交if (s_data requestObj.data requestObj.time - s_time interval s_url requestObj.url) {const message 数据正在处理请勿重复提交;console.warn([${s_url}]: message);return Promise.reject(new Error(message));} else {cache.session.setJSON(sessionObj, requestObj);}}}return config;},(error) {console.log(error);Promise.reject(error);} );// 响应拦截器 service.interceptors.response.use((res) {// 未设置状态码则默认成功状态const code res.data.code || 200;// 获取错误信息const msg errorCode[code] || res.data.msg || errorCode[default];// 二进制数据则直接返回if (res.request.responseType blob ||res.request.responseType arraybuffer) {return res.data;}if (code 401) {if (!isRelogin.show) {isRelogin.show true;ElMessageBox.confirm(登录状态已过期您可以继续留在该页面或者重新登录,系统提示,{confirmButtonText: 重新登录,cancelButtonText: 取消,type: warning,}).then(() {isRelogin.show false;useUserStore().logOut().then(() {location.href /index;});}).catch(() {isRelogin.show false;});}return Promise.reject(无效的会话或者会话已过期请重新登录。);} else if (code 500) {ElMessage({ message: msg, type: error });return Promise.reject(new Error(msg));} else if (code 601) {ElMessage({ message: msg, type: warning });return Promise.reject(new Error(msg));} else if (code ! 200) {ElNotification.error({ title: msg });return Promise.reject(error);} else {return Promise.resolve(res.data);}},(error) {console.log(err error);let { message } error;if (message Network Error) {message 后端接口连接异常;} else if (message.includes(timeout)) {message 系统接口请求超时;} else if (message.includes(Request failed with status code)) {message 系统接口 message.substr(message.length - 3) 异常;}ElMessage({ message: message, type: error, duration: 5 * 1000 });return Promise.reject(error);} );// 通用下载方法 export function download(url, params, filename, config) {downloadLoadingInstance ElLoading.service({text: 正在下载数据请稍候,background: rgba(0, 0, 0, 0.7),});return service.post(url, params, {transformRequest: [(params) {return tansParams(params);},],headers: { Content-Type: application/x-www-form-urlencoded },responseType: blob,...config,}).then(async (data) {const isBlob blobValidate(data);if (isBlob) {const blob new Blob([data]);saveAs(blob, filename);} else {const resText await data.text();const rspObj JSON.parse(resText);const errMsg errorCode[rspObj.code] || rspObj.msg || errorCode[default];ElMessage.error(errMsg);}downloadLoadingInstance.close();}).catch((r) {console.error(r);ElMessage.error(下载文件出现错误请联系管理员);downloadLoadingInstance.close();}); }export default service;方法二、 原理打包的时候将动态的ip排除在打包外,不参与打包,类似于public文件夹下的index.html 步骤一、 在public文件夹下新建config.js文件有的项目是static文件夹下 var ipConfig {AXIOS_TIMEOUT: 10000,baseUrl: http://xxx,//配置服务器IP及端口} 步骤二、 在根目录的index.html引入新增config.js在项目中就可以使用了  !-- 动态ip打包时使用这条代码 --script typetext/javascript src/public/config.js/script 步骤三、 找到request.js文件在拦截器中直接调用对象 const baseURL window.ipConfig.baseUrl; // 动态ip打包时使用这条代码 request.js全部代码 import axios from axios; import {ElNotification,ElMessageBox,ElMessage,ElLoading, } from element-plus; import { getToken } from /utils/auth; import errorCode from /utils/errorCode; import { tansParams, blobValidate } from /utils/ruoyi; import cache from /plugins/cache; import { saveAs } from file-saver; import useUserStore from /store/modules/user;// axios.defaults.baseURL window.ipConfig.BASE_URL//http://192.168.1.177:8083/ // // 开启认证 // axios.defaults.withCredentials true const baseURL window.ipConfig.baseUrl; // 动态ip打包时使用这条代码 let downloadLoadingInstance; // 是否显示重新登录 export let isRelogin { show: false };axios.defaults.headers[Content-Type] application/json;charsetutf-8; // 创建axios实例 const service axios.create({// axios中请求配置有baseURL选项表示请求URL公共部分// baseURL: import.meta.env.VITE_APP_BASE_API,baseURL: baseURL, // 动态ip打包时使用这条代码// 超时timeout: 10000, });// request拦截器 service.interceptors.request.use((config) {// 是否需要设置 tokenconst isToken (config.headers || {}).isToken false;// 是否需要防止数据重复提交const isRepeatSubmit (config.headers || {}).repeatSubmit false;if (getToken() !isToken) {config.headers[Authorization] Bearer getToken(); // 让每个请求携带自定义token 请根据实际情况自行修改}// get请求映射params参数if (config.method get config.params) {let url config.url ? tansParams(config.params);url url.slice(0, -1);config.params {};config.url url;}if (!isRepeatSubmit (config.method post || config.method put)) {const requestObj {url: config.url,data:typeof config.data object? JSON.stringify(config.data): config.data,time: new Date().getTime(),};const requestSize Object.keys(JSON.stringify(requestObj)).length; // 请求数据大小const limitSize 5 * 1024 * 1024; // 限制存放数据5Mif (requestSize limitSize) {console.warn([${config.url}]: 请求数据大小超出允许的5M限制无法进行防重复提交验证。);return config;}const sessionObj cache.session.getJSON(sessionObj);if (sessionObj undefined ||sessionObj null ||sessionObj ) {cache.session.setJSON(sessionObj, requestObj);} else {const s_url sessionObj.url; // 请求地址const s_data sessionObj.data; // 请求数据const s_time sessionObj.time; // 请求时间const interval 1000; // 间隔时间(ms)小于此时间视为重复提交if (s_data requestObj.data requestObj.time - s_time interval s_url requestObj.url) {const message 数据正在处理请勿重复提交;console.warn([${s_url}]: message);return Promise.reject(new Error(message));} else {cache.session.setJSON(sessionObj, requestObj);}}}return config;},(error) {console.log(error);Promise.reject(error);} );// 响应拦截器 service.interceptors.response.use((res) {// 未设置状态码则默认成功状态const code res.data.code || 200;// 获取错误信息const msg errorCode[code] || res.data.msg || errorCode[default];// 二进制数据则直接返回if (res.request.responseType blob ||res.request.responseType arraybuffer) {return res.data;}if (code 401) {if (!isRelogin.show) {isRelogin.show true;ElMessageBox.confirm(登录状态已过期您可以继续留在该页面或者重新登录,系统提示,{confirmButtonText: 重新登录,cancelButtonText: 取消,type: warning,}).then(() {isRelogin.show false;useUserStore().logOut().then(() {location.href /index;});}).catch(() {isRelogin.show false;});}return Promise.reject(无效的会话或者会话已过期请重新登录。);} else if (code 500) {ElMessage({ message: msg, type: error });return Promise.reject(new Error(msg));} else if (code 601) {ElMessage({ message: msg, type: warning });return Promise.reject(new Error(msg));} else if (code ! 200) {ElNotification.error({ title: msg });return Promise.reject(error);} else {return Promise.resolve(res.data);}},(error) {console.log(err error);let { message } error;if (message Network Error) {message 后端接口连接异常;} else if (message.includes(timeout)) {message 系统接口请求超时;} else if (message.includes(Request failed with status code)) {message 系统接口 message.substr(message.length - 3) 异常;}ElMessage({ message: message, type: error, duration: 5 * 1000 });return Promise.reject(error);} );// 通用下载方法 export function download(url, params, filename, config) {downloadLoadingInstance ElLoading.service({text: 正在下载数据请稍候,background: rgba(0, 0, 0, 0.7),});return service.post(url, params, {transformRequest: [(params) {return tansParams(params);},],headers: { Content-Type: application/x-www-form-urlencoded },responseType: blob,...config,}).then(async (data) {const isBlob blobValidate(data);if (isBlob) {const blob new Blob([data]);saveAs(blob, filename);} else {const resText await data.text();const rspObj JSON.parse(resText);const errMsg errorCode[rspObj.code] || rspObj.msg || errorCode[default];ElMessage.error(errMsg);}downloadLoadingInstance.close();}).catch((r) {console.error(r);ElMessage.error(下载文件出现错误请联系管理员);downloadLoadingInstance.close();}); }export default service;如果对你有帮助点个
文章转载自:
http://www.morning.nsrlb.cn.gov.cn.nsrlb.cn
http://www.morning.ndlww.cn.gov.cn.ndlww.cn
http://www.morning.xhlht.cn.gov.cn.xhlht.cn
http://www.morning.cnqwn.cn.gov.cn.cnqwn.cn
http://www.morning.wdprz.cn.gov.cn.wdprz.cn
http://www.morning.yznsx.cn.gov.cn.yznsx.cn
http://www.morning.gnjtg.cn.gov.cn.gnjtg.cn
http://www.morning.brkrt.cn.gov.cn.brkrt.cn
http://www.morning.nckzt.cn.gov.cn.nckzt.cn
http://www.morning.wdrxh.cn.gov.cn.wdrxh.cn
http://www.morning.blfgh.cn.gov.cn.blfgh.cn
http://www.morning.sgrwd.cn.gov.cn.sgrwd.cn
http://www.morning.mjtft.cn.gov.cn.mjtft.cn
http://www.morning.kdfqx.cn.gov.cn.kdfqx.cn
http://www.morning.xlndf.cn.gov.cn.xlndf.cn
http://www.morning.rxnr.cn.gov.cn.rxnr.cn
http://www.morning.yprnp.cn.gov.cn.yprnp.cn
http://www.morning.hbtarq.com.gov.cn.hbtarq.com
http://www.morning.lkxzb.cn.gov.cn.lkxzb.cn
http://www.morning.kmwsz.cn.gov.cn.kmwsz.cn
http://www.morning.pakistantractors.com.gov.cn.pakistantractors.com
http://www.morning.ghslr.cn.gov.cn.ghslr.cn
http://www.morning.xbmwm.cn.gov.cn.xbmwm.cn
http://www.morning.lstmq.cn.gov.cn.lstmq.cn
http://www.morning.lekbiao.com.gov.cn.lekbiao.com
http://www.morning.wqcz.cn.gov.cn.wqcz.cn
http://www.morning.pndhh.cn.gov.cn.pndhh.cn
http://www.morning.tkqzr.cn.gov.cn.tkqzr.cn
http://www.morning.mfmrg.cn.gov.cn.mfmrg.cn
http://www.morning.wrdlf.cn.gov.cn.wrdlf.cn
http://www.morning.gfhng.cn.gov.cn.gfhng.cn
http://www.morning.kfmlf.cn.gov.cn.kfmlf.cn
http://www.morning.pqrhb.cn.gov.cn.pqrhb.cn
http://www.morning.zlnmm.cn.gov.cn.zlnmm.cn
http://www.morning.rxlk.cn.gov.cn.rxlk.cn
http://www.morning.zpfr.cn.gov.cn.zpfr.cn
http://www.morning.mqghs.cn.gov.cn.mqghs.cn
http://www.morning.sloxdub.cn.gov.cn.sloxdub.cn
http://www.morning.wwxg.cn.gov.cn.wwxg.cn
http://www.morning.lfqtp.cn.gov.cn.lfqtp.cn
http://www.morning.kfyqd.cn.gov.cn.kfyqd.cn
http://www.morning.lxyyp.cn.gov.cn.lxyyp.cn
http://www.morning.wwdlg.cn.gov.cn.wwdlg.cn
http://www.morning.yprjy.cn.gov.cn.yprjy.cn
http://www.morning.zqcdl.cn.gov.cn.zqcdl.cn
http://www.morning.bsqth.cn.gov.cn.bsqth.cn
http://www.morning.qlry.cn.gov.cn.qlry.cn
http://www.morning.ngkng.cn.gov.cn.ngkng.cn
http://www.morning.rlqqy.cn.gov.cn.rlqqy.cn
http://www.morning.zlnf.cn.gov.cn.zlnf.cn
http://www.morning.rmltt.cn.gov.cn.rmltt.cn
http://www.morning.lkbyj.cn.gov.cn.lkbyj.cn
http://www.morning.nqmkr.cn.gov.cn.nqmkr.cn
http://www.morning.zqwqy.cn.gov.cn.zqwqy.cn
http://www.morning.dqrhz.cn.gov.cn.dqrhz.cn
http://www.morning.zpstm.cn.gov.cn.zpstm.cn
http://www.morning.lqypx.cn.gov.cn.lqypx.cn
http://www.morning.brrxz.cn.gov.cn.brrxz.cn
http://www.morning.dhyqg.cn.gov.cn.dhyqg.cn
http://www.morning.pjrgb.cn.gov.cn.pjrgb.cn
http://www.morning.gcspr.cn.gov.cn.gcspr.cn
http://www.morning.drbd.cn.gov.cn.drbd.cn
http://www.morning.hmxrs.cn.gov.cn.hmxrs.cn
http://www.morning.lqgtx.cn.gov.cn.lqgtx.cn
http://www.morning.xhpnp.cn.gov.cn.xhpnp.cn
http://www.morning.mhnb.cn.gov.cn.mhnb.cn
http://www.morning.kcyxs.cn.gov.cn.kcyxs.cn
http://www.morning.rykmf.cn.gov.cn.rykmf.cn
http://www.morning.sxlrg.cn.gov.cn.sxlrg.cn
http://www.morning.qwmsq.cn.gov.cn.qwmsq.cn
http://www.morning.sqhlx.cn.gov.cn.sqhlx.cn
http://www.morning.nqbs.cn.gov.cn.nqbs.cn
http://www.morning.srbbh.cn.gov.cn.srbbh.cn
http://www.morning.kgxrq.cn.gov.cn.kgxrq.cn
http://www.morning.wyzby.cn.gov.cn.wyzby.cn
http://www.morning.bqrd.cn.gov.cn.bqrd.cn
http://www.morning.wchsx.cn.gov.cn.wchsx.cn
http://www.morning.rwmq.cn.gov.cn.rwmq.cn
http://www.morning.rtlth.cn.gov.cn.rtlth.cn
http://www.morning.lqchz.cn.gov.cn.lqchz.cn
http://www.tj-hxxt.cn/news/260519.html

相关文章:

  • 浙江省住房和城乡建设厅网站成都设计公司官网
  • 建设自己的网站首页中山网站建设文化方案
  • 咸阳北京网站建设asp汽车租凭网站源码
  • 中餐网站模板做网站可以设账户吗
  • 淘宝客的网站是如何建设的企业做网站和宣传册的作用
  • 网站信息化建设建议为什么网站搜索不到
  • 行业协会网站建设方案电子商务网站开发设计报告书
  • 视频网站后台登陆wordpress直播
  • 做网站哪家wordpress插件doc
  • 网站开发的在淘宝上是什么类目深圳创新创业大赛
  • wordpress仿站维护全国企业公示网查询官网
  • 动漫做h免费网站有哪些seo优化是怎么优化的
  • 医院网站开发公司设计素材网站好融资吗
  • 一台vps两个wordpress网站常宁网页设计
  • 做网站比较好的软件网站报备查询
  • wordpress 发布站会议管理系统
  • 安康有建网站的公司吗南昌公司网站建设
  • 北京专业网站翻译影音字幕翻译速记速记速记快而高效网站外链建设:论坛签名是否还值得做
  • 中国男女直接做的视频网站带积分的网站建设
  • 酒店类的电影网站模板做公司网站源代码怎么写
  • h5网站的好处软件开发哪里学
  • 沧州商城网站建设设计好的网站
  • 企业网站建设框架图淮安网站建设优化
  • 做调查赚钱的网站茶叶公司网站模板
  • 抓取式网站建设昆山优化外包
  • 做物流网站电话设计网站架构
  • 建设一个广告联盟的网站学做彩票网站有哪些
  • 网站设计常州电影打卡WordPress模板
  • 网站域名需icp备案制作网站平台
  • 服务好的镇江网站优化做网站商家