>  기사  >  웹 프론트엔드  >  Jquery Ajax가 오류 403을 보고하는 경우 수행할 작업

Jquery Ajax가 오류 403을 보고하는 경우 수행할 작업

藏色散人
藏色散人원래의
2022-11-30 10:09:173208검색

jquery ajax 오류 403은 프런트 엔드와 서버의 도메인 이름이 다르기 때문에 발생하며, 이로 인해 안티 핫링크 메커니즘이 실행됩니다. 1. 해당 코드 파일을 엽니다. 2. "공용 CorsFilter"를 통해 설정합니다. corsFilter() {...}" 메서드 허용된 도메인이면 충분합니다.

Jquery Ajax가 오류 403을 보고하는 경우 수행할 작업

이 튜토리얼의 운영 환경: Windows 7 시스템, jquery 버전 3.2.1, Dell G3 컴퓨터.

jquery ajax에서 오류 403이 보고되면 어떻게 해야 하나요?

ajax 서버 인터페이스 호출 시 403 오류를 보고하는 솔루션

문제 발견

프런트 엔드 페이지에서 서버 인터페이스를 원격으로 호출하면 403 오류가 보고되지만 직접 액세스할 때는 오류가 보고되지 않습니다. 브라우저.

  Ajax 호출 결과:

Jquery Ajax가 오류 403을 보고하는 경우 수행할 작업

브라우저 호출 결과:

Jquery Ajax가 오류 403을 보고하는 경우 수행할 작업

신고 이유 403

분석 결과, 프론트의 도메인 이름이 끝과 서버가 달랐습니다.

핫링크 방지 메커니즘

핫링크 방지 메커니즘은 http 요청 헤더의 리퍼러를 기반으로 구현됩니다. Refer는 브라우저가 서버에 요청을 시작할 때 해당 ID와 동일합니다. 리퍼러를 전달하고 서버는 리퍼러를 사용하여 자신의 도메인 이름인지 확인합니다. 그렇지 않은 경우 액세스가 계속됩니다.

Jquery Ajax가 오류 403을 보고하는 경우 수행할 작업

Solution

자신의 프로젝트의 경우 코드를 통해 허용되는 도메인을 설정하면 도메인 간 문제를 해결할 수 있습니다. 코드는 다음과 같습니다.

@Configuration
public class GlobalCorsConfig {
    @Bean
    public CorsFilter corsFilter() {
        //1.添加cors配置信息
        CorsConfiguration config = new CorsConfiguration();
        // 允许的域(根据需要进行设置),不要写*,
        config.addAllowedOrigin("http://localhost:6334");
        //是否发送cookie信息
        config.setAllowCredentials(true);
        //允许请求的方式
        config.addAllowedMethod("OPTIONS");
        config.addAllowedMethod("HEAD");
        config.addAllowedMethod("GET");
        config.addAllowedMethod("PUT");
        config.addAllowedMethod("POST");
        config.addAllowedMethod("DELETE");
        config.addAllowedMethod("PATCH");
        //允许的头信息
        config.addAllowedHeader("*");
        //有效时长
        config.setMaxAge(3600L);
        //添加映射网络,拦截一切请求
        UrlBasedCorsConfigurationSource configurationSource = new UrlBasedCorsConfigurationSource();
        configurationSource.registerCorsConfiguration("/**", config);
        //返回新的CorsFilter
        return new CorsFilter(configurationSource);
    }
}

Jquery Ajax가 오류 403을 보고하는 경우 수행할 작업

추천 학습: "jQuery Video Tutorial"

위 내용은 Jquery Ajax가 오류 403을 보고하는 경우 수행할 작업의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.