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

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

Java 跨域問題的處理方式

瀏覽:174日期:2022-08-20 18:47:18

問題

在頁面上要使用 Ajax 請求去獲取另外一個服務的數據,由于瀏覽器的 同源策略,所以直接請求會得到一個 Error。

Failed to load https://www.baidu.com/: No ’Access-Control-Allow-Origin’ header is present on the requested resource. Origin ’http://localhost:3000’ is therefore not allowed access. If an opaque response serves your needs, set the request’s mode to ’no-cors’ to fetch the resource with CORS disabled.

大概就是這樣的一個錯誤,關鍵詞是 Access-Control-Allow-Origin,一般出現這個都是跨域問題。

解決方案

解決跨域問題的方式有很多,但這里之說 Cors 的方案。

在后臺添加一個 Filter 過濾器

/** * 使用自定義的 Filter 攔截器實現跨域請求、 * 適用于所有的 Java Web 項目并且不局限于某個框架 * 注:此處的 @Component 僅為讓 Spring 知道這個 Bean, 不然攔截器不會加載 * * @author rxliuli */public class CustomCorsFilterConfig implements Filter { @Override public void init(FilterConfig filterConfig) { } @Override public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { //允許所有來源 String allowOrigin = '*'; //允許以下請求方法 String allowMethods = 'GET,POST,PUT,DELETE,OPTIONS'; //允許以下請求頭 String allowHeaders = 'Content-Type,X-Token,Authorization'; //允許有認證信息(cookie) String allowCredentials = 'true'; String origin = request.getHeader('Origin'); //此處是為了兼容需要認證信息(cookie)的時候不能設置為 * 的問題 response.setHeader('Access-Control-Allow-Origin', origin == null ? allowOrigin : origin); response.setHeader('Access-Control-Allow-Methods', allowMethods); response.setHeader('Access-Control-Allow-Credentials', allowCredentials); response.setHeader('Access-Control-Allow-Headers', allowHeaders); //處理 OPTIONS 的請求 if ('OPTIONS'.equals(request.getMethod())) { response.setStatus(HttpServletResponse.SC_OK); return; } filterChain.doFilter(request, response); } @Override public void destroy() { }}

在 web.xml 文件中添加攔截器配置(注:如果可能就配置成第一個 Filter)

<!--cors 跨域訪問--><filter> <filter-name>customCorsFilterConfig</filter-name> <filter-class>CustomCorsFilterConfig</filter-class></filter><filter-mapping> <filter-name>customCorsFilterConfig</filter-name> <url-pattern>/*</url-pattern></filter-mapping>

Spring Web 的解決方案

配置一個每次請求都過濾一次的 Filter 就好了

@Configurationpublic class CorsConfig { @Bean public OncePerRequestFilter corsFilter() { return new OncePerRequestFilter() { @Override protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException {//允許所有來源String allowOrigin = '*';//允許以下請求方法String allowMethods = 'GET,POST,PUT,DELETE,OPTIONS';//允許以下請求頭String allowHeaders = 'Content-Type,X-Token,Authorization';//允許有認證信息(cookie)String allowCredentials = 'true';String origin = request.getHeader('Origin');//此處是為了兼容需要認證信息(cookie)的時候不能設置為 * 的問題response.setHeader('Access-Control-Allow-Origin', origin == null ? allowOrigin : origin);response.setHeader('Access-Control-Allow-Methods', allowMethods);response.setHeader('Access-Control-Allow-Credentials', allowCredentials);response.setHeader('Access-Control-Allow-Headers', allowHeaders);//處理 OPTIONS 的請求if ('OPTIONS'.equals(request.getMethod())) { response.setStatus(HttpServletResponse.SC_OK); return;}filterChain.doFilter(request, response); } }; }}

使用示例

下面是一些簡單的使用 fetch 進行跨域請求的示例:

簡單 fetch 請求,和正常使用 fetch 并無區別

fetch(url) .then(res => res.json()) .then(json => console.log(json)) 表單請求

var fd = new FormData()fd.append(’username’, ’rx’)fd.append(’password’, ’rx’)fetch(url, { method: ’POST’, body: fd,}) .then(res => res.json()) .then(json => console.log(json)) 需要認證的請求

fetch(url, { /** * 關鍵就在這里,代表用戶是否應該在跨域的情況下發送 cookies 和 HTTP Basic authentication 等驗信息以及服務端能否返回 Set-Cookie(服務端 Session 需要使用這個向 cookie 中設置 sessionId)。 * 包含三個可選值:omit(從不發送), same-origin(同源才發送), include(總會發送) * 參考鏈接:<https://developer.mozilla.org/zh-CN/docs/Web/API/Request/credentials> */ credentials: ’include’,}) .then(res => res.json()) .then(json => console.log(json))

注:如果想要服務端返回 Set-Cookie(SessionId 也需要通過這個響應屬性去設置) 就必須設置這個請求參數!

那么,之后在前端跨域請求的時候就可以愉快地玩耍啦(v^_^)v

以上就是Java 跨域問題的處理方式的詳細內容,更多關于Java 跨域的資料請關注好吧啦網其它相關文章!

標簽: Java
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
亚洲精品乱码日韩| 精品国产乱码久久久| 中文av在线全新| 久久久国产精品网站| 麻豆精品视频在线观看免费| 中文字幕亚洲在线观看| 亚洲精品一二| 国产调教一区二区三区| 国产乱人伦丫前精品视频 | 宅男噜噜噜66国产日韩在线观看| 欧美另类专区| 免费看的黄色欧美网站| 综合视频一区| 91精品福利观看| 奇米狠狠一区二区三区| 国产精品巨作av| 久久一区亚洲| 狠狠躁少妇一区二区三区| 日韩av在线播放网址| 国产高清不卡| 免费毛片在线不卡| 视频一区中文字幕国产| 青青青国产精品| 欧美成人精品午夜一区二区| 国产成人黄色| 国产主播一区| 亚洲精品欧美| 免费精品一区| 亚洲天堂一区二区| 国产麻豆综合| 日韩av午夜在线观看| 国产精品115| 加勒比视频一区| 欧美精品资源| 丝袜a∨在线一区二区三区不卡 | 日韩在线观看一区二区| 日本午夜精品| 天堂√8在线中文| 香蕉视频成人在线观看| 欧美日韩一区二区三区四区在线观看| 国产精品成人自拍| 亚洲91视频| 亚洲欧美在线专区| 国产一区精品福利| 国产婷婷精品| 国产欧美日韩影院| 9999国产精品| 美女精品在线| 精品久久久网| 日韩影院精彩在线| 国产精品99久久精品| 亚洲欧美日韩国产一区二区| 久久a爱视频| 亚洲深爱激情| 欧美国产日本| 亚洲综合丁香| 久久永久免费| 另类av一区二区| 精品视频高潮| 蜜桃视频在线观看一区| 黑森林国产精品av| 亚洲三区欧美一区国产二区| 精品99久久| 亚洲青青久久| 久久久精品日韩| 国产精品午夜av| 欧美不卡视频| 久久成人高清| 亚洲欧美日韩在线观看a三区| 美女视频黄 久久| 蜜臀av亚洲一区中文字幕| av免费不卡国产观看| 奇米色欧美一区二区三区| 激情久久中文字幕| 国产精品4hu.www| 亚洲综合中文| 日韩在线第七页| 国产亚洲精品精品国产亚洲综合| 红桃视频欧美| 日韩av有码| 国产日韩免费| 免费精品视频最新在线| 欧美不卡高清一区二区三区| 国产精品久久久久久久久久久久久久久 | 国产亚洲激情| av中文资源在线资源免费观看| 亚洲欧美网站在线观看| 日韩在线观看不卡| 麻豆视频久久| 亚洲日韩视频| 国产美女精品| 亚洲不卡av不卡一区二区| 欧美成a人片免费观看久久五月天| 日韩精品一卡二卡三卡四卡无卡| 91精品国产成人观看| 国产一区国产二区国产三区| 欧美日韩中文| 日韩高清在线观看一区二区| 玖玖玖国产精品| 亚洲精品国产偷自在线观看| 人人草在线视频| 麻豆精品视频在线| 国产探花在线精品| 综合日韩在线| 亚洲一区欧美| 日韩中文字幕麻豆| 在线一区欧美| 国产一区二区高清| 99日韩精品| 香蕉人人精品| 91精品在线观看国产| 日韩欧美字幕| 日韩一区二区中文| 天堂а√在线最新版中文在线| 精品亚洲a∨| 精品黄色一级片| 激情综合婷婷| 精品一区二区三区的国产在线观看| 91成人精品在线| 日本久久一区| 日本精品国产| 日韩高清国产一区在线| 亚洲久久在线| 日韩不卡一区二区| 欧美欧美黄在线二区| 国产探花一区| 国产精品久久国产愉拍| 国产欧美高清| 国产精品videossex| 国产精品sm| 岛国精品一区| 日韩国产欧美一区二区| 欧美香蕉视频| 国产99久久久国产精品成人免费| 日韩久久电影| 欧美一区二区三区高清视频| 欧美成人综合| 日韩午夜av| 蜜桃传媒麻豆第一区在线观看| 亚洲最新av| 国产欧美丝祙| 精品色999| 日韩三区免费| 亚洲欧美日韩国产一区二区| 一区二区不卡| 国产福利一区二区精品秒拍| 国产盗摄——sm在线视频| 日韩黄色大片| 亚洲精品网址| 亚洲精品日本| 欧美成人一二区| 欧产日产国产精品视频| 欧美日韩激情| 日本不卡高清视频| 精品一二三区| 亚洲精品国产偷自在线观看| 日韩欧美2区| 蜜桃久久久久| 99久久夜色精品国产亚洲1000部| 99国产精品久久久久久久| 日本欧美在线看| 国产精品调教视频| 麻豆mv在线观看| 伊人久久亚洲热| 国产欧美日韩一区二区三区在线| a日韩av网址| 免费成人av在线播放| 国产视频网站一区二区三区| 精品精品国产三级a∨在线| 九九在线精品| 日韩高清中文字幕一区| 国产成人精品三级高清久久91| 五月婷婷亚洲| 国产欧美91| 亚洲电影在线| 日韩精品亚洲一区二区三区免费| 免费在线日韩av| 亚洲国产综合在线看不卡| 在线精品视频一区| 久久精品国产网站| 亚洲免费高清| 国产日韩欧美高清免费| 久久国产中文字幕| 日韩欧美2区| 久久激情网站| 国产欧美在线| 国产二区精品| 国产精品视频3p| 99视频一区| 精品久久久久中文字幕小说| 久久亚洲风情| 高清在线一区| 亚洲欧洲国产精品一区| 91嫩草亚洲精品| 亚洲精品自拍| 久久一区二区三区喷水| 国产精品99久久免费观看| 99国产精品| 欧美国产美女| 国产欧美日韩在线观看视频|