日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

vue項目打包部署跨域的實現步驟

瀏覽:251日期:2022-06-09 14:14:42
目錄
  • 1.前端工程解決辦法
    • 1.1開發時候解決辦法
    • 1.2打包部署后解決辦法
  • 2.后端工程解決辦法

    跨源資源共享(CORS,或通俗地譯為跨域資源共享)是一種基于 HTTP 頭的機制,該機制通過允許服務器標示除了它自己以外的其他源(域、協議或端口),使得瀏覽器允許這些源訪問加載自己的資源??缭促Y源共享還通過一種機制來檢查服務器是否會允許要發送的真實請求,該機制通過瀏覽器發起一個到服務器托管的跨源資源的“預檢”請求。在預檢中,瀏覽器發送的頭中標示有 HTTP 方法和真實請求中會用到的頭??缭?HTTP 請求的一個例子:運行在 https://domain-a.com 的 JavaScript 代碼使用 XMLHttpRequest 來發起一個到 https://domain-b.com/data.json 的請求(也就是vue的axios,或者JQuery的ajax請求)。

    出于安全性,瀏覽器限制腳本內發起的跨源 HTTP 請求。例如,XMLHttpRequest 和 Fetch API 遵循同源策略。這意味著使用這些 API 的 Web 應用程序只能從加載應用程序的同一個域請求 HTTP 資源,除非響應報文包含了正確 CORS 響應頭。

    vue等前端工程在打包部署后,避免不了跨域問題。很讓人抓狂,尤其是新手。其實解決起來也不難。

    1.前端工程解決辦法

    1.1開發時候解決辦法

    在vue的開發中可以配置代理,來解決跨域問題,以vue3的vite為例:
    比如我們的后端接口地址前綴為:http://192.168.1.2/api/v1/,在vite中就可以這樣配置代理:

    # 跨域代理,您可以配置多個 ,請注意,沒有換行符
    VITE_PROXY = [["/api/v1","http://192.168.1.2/api/v1"]]
    #接口地址(程序中使用的地址)
    VITE_API_URL=/api/v1

    1.2打包部署后解決辦法

    vue項目打包后編譯成靜態js了,vite的代理就不能用了,一般我們都是用nginx來直接部署打包后的程序,我們就可以在nginx中配置反向代理來解決:

    server{
    	listen 80;
    	server_name localhost;
    	index    index.html index.htm;
    	root   /var/www/dist;
    	error_log   logs/localhost_error.log crit;
    	access_log  logs/localhost_access.log  access;
    	# 接口地址反代
        location /api/v1/ {
    	    proxy_pass http://192.168.1.2/api/v1/;
    	    proxy_redirect off;
    	    proxy_set_header HOST $host;
    	    proxy_set_header X-Real-IP $remote_addr;
    	    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    	    proxy_set_header X-Forwarded-Proto  $scheme;
    	}
    	rewrite ^(.*)\;(.*)$ $1 last;
    	location ~* \.(eot|ttf|woff|woff2|svg|otf|html|htm|pdf|PDF|mp4|MP4)$ {
    		add_header Access-Control-Allow-Origin *;
    	}
    	add_header Access-Control-Allow-Origin *;
    }

    2.后端工程解決辦法

    也可以在后端工程中配置跨域,在springboot中新建CorsConfig.java配置類,在其中加入如下Bean:

    在Spring WebMvc中:

    package com.example.config;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.http.HttpHeaders;
    import org.springframework.web.servlet.config.annotation.CorsRegistry;
    import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
    import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
    @Configuration
    public class CorsConfig implements WebMvcConfigurer {
    ?? ?@Bean
    ? ? public WebMvcConfigurer corsConfigurer() {
    ? ? ? ? return new WebMvcConfigurer() {
    ? ? ? ? ? ? @Override
    ? ? ? ? ? ? public void addCorsMappings(CorsRegistry registry) {
    ? ? ? ? ? ? ? ? registry.addMapping("/**")
    ? ? ? ? ? ? ? ? ? ? .allowedOriginPatterns("*") //允許跨域的域名,可以用*表示允許任何域名使用
    ? ? ? ? ? ? ? ? ? ? .allowedMethods("*") //允許任何方法(post、get等)
    ?? ? ? ? ? ? ? ? ? ?.allowedHeaders("*") //允許任何請求頭
    ? ? ? ? ? ? ? ? ? ? .allowCredentials(true) //帶上cookie信息
    ? ? ? ? ? ? ? ? ? ? .exposedHeaders(HttpHeaders.SET_COOKIE)
    ? ? ? ? ? ? ? ? ? ? .maxAge(3600L); //maxAge(3600)表明在3600秒內,不需要再發送預檢驗請求,可以緩存該結果
    ? ? ? ? ? ? }
    ? ? ? ? };
    ? ? }
    }

    在Spring WebFlux中:

    package com.example.config;
    import org.springframework.boot.autoconfigure.AutoConfigureOrder;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.core.Ordered;
    import org.springframework.http.HttpHeaders;
    import org.springframework.web.reactive.config.CorsRegistry;
    import org.springframework.web.reactive.config.EnableWebFlux;
    import org.springframework.web.reactive.config.WebFluxConfigurer;
    @Configuration
    public class CorsConfig implements WebFluxConfigurer {
    ? ? @Override
    ? ? public void addCorsMappings(CorsRegistry registry) {
    ? ? ? ?registry.addMapping("/**")
    ? ? ? ? ? ? ? ? ? ? .allowedOriginPatterns("*") //允許跨域的域名,可以用*表示允許任何域名使用
    ? ? ? ? ? ? ? ? ? ? .allowedMethods("*") //允許任何方法(post、get等)
    ?? ? ? ? ? ? ? ? ? ?.allowedHeaders("*") //允許任何請求頭
    ? ? ? ? ? ? ? ? ? ? .allowCredentials(true) //帶上cookie信息
    ? ? ? ? ? ? ? ? ? ? .exposedHeaders(HttpHeaders.SET_COOKIE)
    ? ? ? ? ? ? ? ? ? ? .maxAge(3600L); //maxAge(3600)表明在3600秒內,不需要再發送預檢驗請求,可以緩存該結果
    ? ? }
    }

    到此這篇關于vue項目打包部署跨域的實現步驟的文章就介紹到這了,更多相關vue 打包部署跨域內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!

    標簽: JavaScript
    日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
    欧美午夜精彩| 午夜精品久久久久久久久久蜜桃| 香蕉人人精品| 亚洲91视频| av亚洲免费| 亚洲欧美视频| 男女激情视频一区| 视频一区二区国产| 日韩精品免费视频一区二区三区| 中文字幕日韩高清在线| 视频一区中文字幕精品| 亚洲精品激情| 日韩成人av影视| 国产精品亚洲片在线播放| 国产精品久久久久77777丨| 国产成人精品三级高清久久91| 国产一区三区在线播放| 免费在线小视频| 欧美特黄一区| 亚洲欧美一级| 麻豆精品视频在线观看视频| 高清av一区| 欧美一区二区三区激情视频| 久久亚洲色图| 国产麻豆一区二区三区精品视频| 成人午夜网址| 国产在线成人| 99视频在线精品国自产拍免费观看| 视频一区二区中文字幕| 国产日韩一区二区三区在线播放| 国产一区二区视频在线看| 99久久亚洲精品| 亚洲香蕉久久| 国产精东传媒成人av电影| 青青青免费在线视频| 99亚洲视频| 国产精品大片免费观看| 视频福利一区| 亚州欧美在线| 国产高潮在线| 老牛国产精品一区的观看方式| 日本免费一区二区视频| 黄毛片在线观看| 爽爽淫人综合网网站| 欧美精品不卡| 蜜臀91精品国产高清在线观看| 中文字幕一区二区三区日韩精品| 国产伊人久久| 亚洲人妖在线| 欧美日韩精品免费观看视完整| 日韩在线卡一卡二| 久久精品理论片| 亚洲一区欧美激情| 精品国产一区二| 美女精品在线观看| 国产一区二区久久久久| 好吊日精品视频| 久久国产尿小便嘘嘘| 色88888久久久久久影院| 中文字幕免费一区二区| 高清av一区| 日本亚洲视频| 丝袜美腿一区| 国产日韩免费| 99国产精品久久久久久久成人热| 免费日韩成人| 亚洲三级毛片| 麻豆精品蜜桃| 国产美女亚洲精品7777| 激情五月综合网| 麻豆91精品视频| 日韩专区在线视频| 久久亚洲精精品中文字幕| 在线亚洲精品| 国产va免费精品观看精品视频| 石原莉奈在线亚洲三区| 高清久久一区| 欧美日本不卡| 99亚洲视频| аⅴ资源天堂资源库在线| 日本少妇一区二区| 亚洲一区二区三区免费在线观看| 成人污污视频| 欧美日韩va| 免费欧美在线视频| 久久中文字幕二区| 国产在线一区不卡| 日韩精品第二页| 在线成人直播| 亚洲成人一区在线观看| 国内一区二区三区| 国产日韩视频| 亚洲精品九九| 日韩精品一二区| 欧美日韩国产欧| 91看片一区| 精品入口麻豆88视频| 久久国产精品免费精品3p| 免费国产亚洲视频| 亚洲欧洲午夜| 在线日韩一区| 蜜桃精品在线| 欧美交a欧美精品喷水| 人人精品久久| 日韩精品1区2区3区| 水野朝阳av一区二区三区| 国产精品91一区二区三区| 三上悠亚国产精品一区二区三区 | 免费一区二区视频| 亚洲尤物在线| 99久久99久久精品国产片果冰| 日韩av在线中文字幕| 国产精品亚洲综合色区韩国| 日韩激情网站| 日本a口亚洲| 日韩1区2区日韩1区2区| 欧美一区久久| 国产欧美自拍| 国产日本精品| 国产精选久久| 国产精品一页| 国产精品videossex| 国产精品成人**免费视频| 国产一区二区三区视频在线| 欧美不卡视频| 欧美日韩在线播放视频| 私拍精品福利视频在线一区| 日韩在线观看一区| 亚洲伦乱视频| 欧美日韩水蜜桃| 亚洲高清二区| 午夜一区在线| 三级亚洲高清视频| 亚洲天堂日韩在线| 日韩二区三区在线观看| 国产精品极品在线观看| 老司机免费视频一区二区三区| 国产精品.xx视频.xxtv| 超碰在线99| 免费观看不卡av| 亚洲视频电影在线| 欧美日韩xxxx| 久久不见久久见国语| 麻豆精品少妇| 韩国久久久久久| 欧洲激情综合| 中文字幕av一区二区三区四区| 日韩精品久久久久久久软件91| 四虎在线精品| 麻豆精品久久| 欧美中文一区二区| 免费人成精品欧美精品| 国产一卡不卡| 在线手机中文字幕| 好吊视频一区二区三区四区| 婷婷精品在线| 国产一区一一区高清不卡| 成人羞羞视频在线看网址| 黑丝一区二区三区| 久久精品欧美一区| 国产高清一区二区| 宅男噜噜噜66国产日韩在线观看| 久久午夜视频| 国产情侣久久| 色在线视频观看| 欧美日韩中文一区二区| 蜜桃久久久久久| 国产精品v日韩精品v欧美精品网站 | 欧美成人精品一级| 丝袜诱惑一区二区| 日韩一级不卡| 国产精品久久777777毛茸茸| 亚洲爱爱视频| 视频国产精品| av资源亚洲| 综合一区二区三区| 成人在线黄色| 综合色就爱涩涩涩综合婷婷| 成人精品国产亚洲| 爽好多水快深点欧美视频| 麻豆精品新av中文字幕| 在线天堂资源www在线污| 美女高潮久久久| 久久精品青草| 欧美在线看片| 国内亚洲精品| 欧美片第1页综合| 99成人超碰| 69堂精品视频在线播放| 久久视频一区| 国产亚洲高清在线观看| 欧美不卡高清一区二区三区| 亚洲一区二区三区在线免费| 国产成人精品一区二区免费看京| 老司机精品久久| 日韩伦理在线一区| 国产亚洲欧美日韩精品一区二区三区 | 亚洲黑丝一区二区| 欧美三区不卡| 国产视频亚洲|