在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Python  HTML/ 前端怎么解決跨域問題

前端怎么解決跨域問題

一般面試的人很喜歡問這個。。有什么方法可以解決???
我聽到有些人說vue cli里面可以配置代理??墒蔷W(wǎng)上有說上線之后,這個代理還是會變成跨域的。(就是不生效的意思)

回答
編輯回答
亮瞎她

nginx 和 vue都可以配置的

2018年5月11日 07:08
編輯回答
墨小羽

前端當然是和后端一起解決跨域,ajax跨域的話,大部分后端搞一下就完事了,前端幾乎不需要做啥。

2017年9月14日 23:16
編輯回答
冷溫柔

開發(fā)階段

vue cli 代理配置

config/index.js

    proxyTable: {
      '/api': {
        target: 'http://11.17.0.18:9999',
        changeOrigin: true,
        pathRewrite: {
          '^/api': ''
        }
      }
    },

上線后

讓運維配置 nginx rewrite 就行了

還有么

讓后端開發(fā)在頁面 response.header 里加 允許跨域
2017年9月22日 12:09
編輯回答
六扇門

甩鍋給后臺,實在不行jsonp、window.name或者通過修改document.domain來跨子域,還有就是使用HTML5中新引進的window.postMessage方法來跨域傳送數(shù)據(jù)

2017年9月17日 05:38
編輯回答
悶騷型

稍微總結(jié)了下??梢詤⒖枷拢?a >https://segmentfault.com/a/11...

2018年8月29日 11:55
編輯回答
老梗

這個問題還真的是歷久彌新啊。

怎么說呢,我只能說我對于跨域問題有一定的了解,并且知道常規(guī)的兩種解決方案。

  1. jsonp

其大概原理是利用script/img/link等標簽可以跨域取回文件的性質(zhì),來實現(xiàn)跨域的。

  1. cors

這個是瀏覽器和服務器端共同合作去進行跨域的,瀏覽器端相關(guān)的接口有 fetch/xhr,并且這兩者實現(xiàn) cors 的跨

域流程應該還不一樣,很蛋疼。

總之,跨域是一個很復雜的問題。

我補充一點,題主有興趣可以去看一下,歡迎探討。

  1. 為什么說 fetch/xhr 的流程不一樣。

題主可以試試分別使用 fetch/xhr 跨域請求一個接口,這個接口要求附帶 cookie,并且接口為非簡單請求

2018年9月21日 09:33
編輯回答
久舊酒

這種一般回答兩點就可以了:
1.jsonp
2.CORS
這兩個重點了解一下
其他方式還有postMessage、websocket、hash等等

2018年2月10日 06:49
編輯回答
柚稚

都讓開,讓我來
題主這個問題其實比較廣

一. 如果是開發(fā)環(huán)境需要連其它環(huán)境的API, 確保線上不存在問題的話,可以強制破開跨域問題
右擊google瀏覽器 - 找到目標- 添加 --args --disable-web-security --user-data-dir

二. 樓主用的vue-cli, 處理接口的方式不需要寫死域名 比如你要請求的是/user/login.json 直接這樣寫可以,然后在webpack上配置代理

devServer: {
    proxy: {
        '*': {
            target: 'xxxx', // 這里寫要代理的ip
            secure: false,
            changeOrigin: true
        }
    }
}

三. 上線和開發(fā)還是存在跨域問題 那么直接通過jsonp去處理 原理其實很簡單 就是通過<script>標簽去加載接口 通過callback的方法接收回調(diào)

四 還有其它辦法就不多說 百度就有 不常用就不說了

2017年10月20日 04:55