最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Spring Cloud出現(xiàn)Options Forbidden 403問題解決方法

 更新時間:2017年11月07日 09:42:38   作者:1CSH1  
本篇文章主要介紹了Spring Cloud出現(xiàn)Options Forbidden 403問題解決方法,具有一定的參考價值,有興趣的可以了解一下

摘要:本文簡述了博主在開發(fā)過程中,需要跨域調(diào)試的時候,出現(xiàn)了 OPTIONS 請求 Forbidden 的問題,以及解決方法。

403 Forbidden 解釋:

Forbidden
You don't have permission to access / on this server.
Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request.

403 Forbidden 是HTTP協(xié)議中的一個狀態(tài)碼(Status Code)。可以簡單的理解為沒有權(quán)限訪問此站點。

問題

在使用 Spring Cloud 的項目中,本地跨域調(diào)試發(fā)現(xiàn) POST 請求轉(zhuǎn)為了 OPTIONS 請求,并且服務(wù)端拒絕訪問,其實是 CORS 請求的問題。

CORS 請求分為2類: 簡單請求 和 非簡單請求。兩者主要的區(qū)分點在于:

1: 請求方法為 HEAD, GET, POST;

2: HTTP 頭信息為以下幾個: Accept, Accept-Language,Content-Language, Last-Event-ID,Content-Type (值為 application/x-www-form-urlencoded、multipart/form-data、text/plain)。

只要滿足以上兩點,則為簡單請求;否則為非簡單請求。

簡單請求的處理方式是瀏覽器直接發(fā)送 CORS 請求。非簡單請求的處理方式是瀏覽器發(fā)送預(yù)檢請求,表示詢問服務(wù)器當前的域名是否可以訪問正常服務(wù)器,如果可以訪問,則發(fā)送正常的請求到服務(wù)器;否則報錯。

現(xiàn)在確定遇到的問題就是在 CORS 請求預(yù)檢的時候發(fā)現(xiàn)域名不在服務(wù)器端的白名單里面,所以需要修改服務(wù)端的請求返回報文。

解決方案

在網(wǎng)關(guān)中添加下面的過濾器,在每次請求返回報文中添加報文頭,即可正常訪問

@Component
public class CorsFilter implements Filter {

  @Override
  public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
    HttpServletResponse response = (HttpServletResponse) res;
    response.setHeader("Access-Control-Allow-Origin", "*");
    response.setHeader("Access-Control-Allow-Methods", "POST, GET, PUT, OPTIONS, DELETE, PATCH");
    response.setHeader("Access-Control-Max-Age", "3600");
    response.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
    response.setHeader("Access-Control-Expose-Headers", "Location");
    chain.doFilter(req, res);
  }

  @Override
  public void init(FilterConfig filterConfig) {}

  @Override
  public void destroy() {}

}


參考文章:

跨域資源共享 CORS 詳解

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

雅安市| 旺苍县| 临洮县| 化隆| 永宁县| 九寨沟县| 崇州市| 南乐县| 海盐县| 砚山县| 洞头县| 元阳县| 宜宾市| 克什克腾旗| 辽宁省| 长沙县| 阿拉善盟| 德江县| 富川| 福鼎市| 珠海市| 台北县| 中方县| 秀山| 万州区| 镇巴县| 吐鲁番市| 瑞金市| 武汉市| 镇雄县| 新平| 荆门市| 渭南市| 沧州市| 双鸭山市| 武鸣县| 平果县| 杨浦区| 乌拉特中旗| 麻栗坡县| 前郭尔|