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

SpringBoot前后端分離跨域問(wèn)題:狀態(tài)碼403拒絕訪問(wèn)解決辦法

 更新時(shí)間:2024年01月10日 11:50:00   作者:烽起黎明  
這篇文章主要給大家介紹了關(guān)于SpringBoot前后端分離跨域問(wèn)題:狀態(tài)碼403拒絕訪問(wèn)的解決辦法,403是被服務(wù)器拒絕了,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下

前言

最近在寫(xiě)和同學(xué)一起做一個(gè)前后端分離的項(xiàng)目,今日開(kāi)始對(duì)接口準(zhǔn)備進(jìn)行 登錄注冊(cè) 的時(shí)候發(fā)現(xiàn)前端在發(fā)起請(qǐng)求后,抓包發(fā)現(xiàn)后端返回了一個(gè)403的錯(cuò)誤,解決了很久發(fā)現(xiàn)是【跨域問(wèn)題】,第一次遇到,便作此記錄?

異常描述

在后端服務(wù)器啟動(dòng)后,前端頁(yè)面也起了起來(lái),然后點(diǎn)擊這個(gè)【登錄】按鈕準(zhǔn)備向后端發(fā)起POST請(qǐng)求時(shí)卻沒(méi)有任何的反應(yīng),便覺(jué)得很疑惑

于是來(lái)到后端的控制臺(tái)觀察是否有什么異常,但是也發(fā)現(xiàn)并沒(méi)有任何的異常Exception顯示出來(lái),就覺(jué)得很奇怪(?∀?(?∀?(?∀?*)

抓包排查

那么這個(gè)時(shí)候:提升自己的機(jī)會(huì)就又來(lái)了,我便準(zhǔn)備去查看網(wǎng)頁(yè)控制臺(tái)并抓包進(jìn)行觀察

再次打開(kāi)這個(gè)網(wǎng)頁(yè)發(fā)送請(qǐng)求的時(shí)候便發(fā)現(xiàn),出現(xiàn)了兩個(gè) url,仔細(xì)觀察發(fā)現(xiàn)端口號(hào)是不一樣的,一個(gè)是我服務(wù)器啟動(dòng)的端口,為8080,另一個(gè)呢問(wèn)了前端的同學(xué)說(shuō)是它占用的這個(gè)端口號(hào),為5173

那么兩個(gè)端口號(hào)都不一致前端發(fā)起請(qǐng)求后端無(wú)法接受到確實(shí)是可以解釋得通的

接著仔細(xì)查看這里的英文便可以看到前面的這個(gè)localhost:5173已經(jīng)被 CORS策略 給拒絕了,說(shuō):不存在“Access Control Allow Origin”這樣的標(biāo)頭,那讀到這里我又可以進(jìn)一步斷定應(yīng)該是【訪問(wèn)被拒絕】了,但是還無(wú)法做出完全的肯定

此時(shí)我又去進(jìn)行抓包確認(rèn),連著點(diǎn)了三次登錄按鈕,并通過(guò)【Fiddler】進(jìn)行抓包便可以觀察到很醒目的三個(gè)403,那么清楚HTTP協(xié)議的狀態(tài)碼的同學(xué)便可以清楚

【403狀態(tài)碼】:表示訪問(wèn)被拒絕,有的頁(yè)面通常需要用戶具有一定的權(quán)限才能訪問(wèn)(登陸后才能訪問(wèn))

例如::查看碼云的私有倉(cāng)庫(kù), 如果不登陸, 就會(huì)出現(xiàn)403

Spring Boot解決跨域問(wèn)題

那么此時(shí),我們便可以在后端通過(guò)SpringBoot去寫(xiě)一個(gè)配置文件,以指定哪個(gè)端口是可以進(jìn)行跨域訪問(wèn)的

以下是相關(guān)的代碼,只需要在config包(一般放配置文件)下添加一個(gè)這樣的類即可,因?yàn)樗怯嘘P(guān)一些配置,所以要加上@Configuration注解

package com.example.demo.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
import org.springframework.web.filter.CorsFilter;

@Configuration
public class MyCorsConfig {
    @Bean
    public CorsFilter corsFilter() {
        CorsConfiguration configuration = new CorsConfiguration();
        configuration.addAllowedOrigin(http"://localhost:5173");    // 允許誰(shuí)跨域
        configuration.setAllowCredentials(true);                    // 傳cookie
        configuration.addAllowedMethod("*");                        // 允許哪些方法跨域 post/get
        configuration.addAllowedHeader("*");                        // 允許哪些頭信息

        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
        source.registerCorsConfiguration("/**", configuration); // 攔截一切請(qǐng)求

        return new CorsFilter(source);
    }
}

最主要的還是配置下面的這一句,將端口號(hào)為5173的口子放開(kāi),這樣任何的HTTP請(qǐng)求就可以進(jìn)來(lái)了

configuration.addAllowedOrigin("http://localhost:5173");    // 允許誰(shuí)跨域

此時(shí)我們?cè)偃タ吹骄涂梢园l(fā)現(xiàn)前后端可以進(jìn)行交互了,只是因著其他的原因讓以至于后端返回了一些錯(cuò)誤的信息給到前端

總結(jié)

到此這篇關(guān)于SpringBoot前后端分離跨域問(wèn)題:狀態(tài)碼403拒絕訪問(wèn)解決辦法的文章就介紹到這了,更多相關(guān)SpringBoot狀態(tài)碼403拒絕訪問(wèn)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java設(shè)計(jì)模式之簡(jiǎn)單工廠模式簡(jiǎn)述

    java設(shè)計(jì)模式之簡(jiǎn)單工廠模式簡(jiǎn)述

    這篇文章主要為大家詳細(xì)介紹了java設(shè)計(jì)模式之簡(jiǎn)單工廠模式,簡(jiǎn)單工廠模式的實(shí)質(zhì)是由一個(gè)工廠類根據(jù)傳入的參數(shù),動(dòng)態(tài)決定應(yīng)該創(chuàng)建哪一個(gè)產(chǎn)品類的實(shí)例,感興趣的小伙伴們可以參考一下
    2016-08-08
  • Java中使用json與前臺(tái)Ajax數(shù)據(jù)交互的方法

    Java中使用json與前臺(tái)Ajax數(shù)據(jù)交互的方法

    這篇文章主要為大家詳細(xì)介紹了Java中使用json與前臺(tái)Ajax數(shù)據(jù)交互的方法,分享Ajax獲取顯示Json數(shù)據(jù)的一種方法,感興趣的小伙伴們可以參考一下
    2016-06-06
  • Java使用Spire.PDF實(shí)現(xiàn)高效壓縮PDF文件

    Java使用Spire.PDF實(shí)現(xiàn)高效壓縮PDF文件

    這篇文章主要介紹了過(guò)大的文件體積常引發(fā)傳輸卡頓、加載緩慢等問(wèn)題,本文將解析?Spire.PDF?for?Java?的?PDF?壓縮方案,有需要的可以了解下
    2025-08-08
  • Java  隊(duì)列 Queue 用法實(shí)例詳解

    Java 隊(duì)列 Queue 用法實(shí)例詳解

    本文實(shí)例講述了Java內(nèi)置隊(duì)列類Queue用法,分享給大家供大家參考
    2017-04-04
  • SpringMVC的工程搭建步驟實(shí)現(xiàn)

    SpringMVC的工程搭建步驟實(shí)現(xiàn)

    這篇文章主要介紹了SpringMVC的工程搭建步驟實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • Jenkins系統(tǒng)如何進(jìn)行數(shù)據(jù)備份

    Jenkins系統(tǒng)如何進(jìn)行數(shù)據(jù)備份

    隨著我們的長(zhǎng)期使用,Jenkins系統(tǒng)中的內(nèi)容會(huì)越來(lái)越多,特別是一些配置相關(guān)的東西,不能有任何丟失。這個(gè)時(shí)候我們就需要定期備份我們的Jenkins系統(tǒng),避免一些誤操作不小心刪除了某些重要文件,本文就將介紹下Jenkins系統(tǒng)如何進(jìn)行數(shù)據(jù)備份
    2021-06-06
  • Java中的RoundingMode舍入模式詳解

    Java中的RoundingMode舍入模式詳解

    Java中的RoundingMode枚舉類用于控制高精度數(shù)值處理時(shí)的舍入行為,提供多種舍入模式,本文給大家介紹Java的RoundingMode舍入模式,感興趣的朋友跟隨小編一起看看吧
    2026-01-01
  • Integer IntegerCache源碼閱讀

    Integer IntegerCache源碼閱讀

    這篇文章主要介紹了Integer IntegerCache源碼閱讀,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-01-01
  • 詳解MyBatis特性之動(dòng)態(tài)SQL

    詳解MyBatis特性之動(dòng)態(tài)SQL

    動(dòng)態(tài) SQL 是 MyBatis 的強(qiáng)大特性之一,這篇文章我們將結(jié)合動(dòng)態(tài)SQL完成更加復(fù)雜的 SQL 操作,文章通過(guò)代碼示例給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-01-01
  • SpringBoot項(xiàng)目實(shí)現(xiàn)統(tǒng)一異常處理的最佳方案

    SpringBoot項(xiàng)目實(shí)現(xiàn)統(tǒng)一異常處理的最佳方案

    在前后端分離的項(xiàng)目開(kāi)發(fā)過(guò)程中,我們通常會(huì)對(duì)數(shù)據(jù)返回格式進(jìn)行統(tǒng)一的處理,這樣可以方便前端人員取數(shù)據(jù),后端發(fā)生異常時(shí)同樣會(huì)使用此格式將異常信息返回給前端,本文介紹了如何在SpringBoot項(xiàng)目中實(shí)現(xiàn)統(tǒng)一異常處理,如有錯(cuò)誤,還望批評(píng)指正
    2024-02-02

最新評(píng)論

东莞市| 高陵县| 宁国市| 读书| 隆尧县| 肇东市| 宁阳县| 茌平县| 光泽县| 肇东市| 台山市| 新绛县| 黔江区| 蒙阴县| 高碑店市| 大荔县| 正阳县| 鞍山市| 信宜市| 岑巩县| 澜沧| 平湖市| 蓝山县| 巴塘县| 印江| 聂荣县| 彭阳县| 陕西省| 望奎县| 新建县| 乌拉特后旗| 那坡县| 大新县| 嘉鱼县| 鄂托克前旗| 贵定县| 东台市| 元阳县| 东至县| 乐昌市| 吉林省|