CocosCreator 가 웹 플랫폼 에 발표 한 HTTP Get 크로스 도 메 인 문제

2347 단어 자바
배경: creator 가 만 든 작은 게임 을 웹 엔 드 에 올 려 tomcat http 서버 에서 디자인 을 테스트 할 때 로그 인 을 고려 하 는 방식 은 http 에서 데 이 터 를 얻 고 실제 링크 의 서버 ip 주 소 를 가 져 오 는 것 입 니 다.그러나 게임 의 웹 앱 은 tomcat 아래 에 놓 여 있 고 http 응답 서버 는 sprintboot 를 다른 서버 에 놓 습 니 다.요청 중 에 보 고 했 습 니 다. CORS policy: No 'Access - Control - Allow - Origin 은 자 료 를 찾 아 보 았 습 니 다. 해결 방향 은 게임 을 할 http 서버 와 Get 에 대응 하 는 HTTP 서버 를 모두 처리 해 야 한 다 는 것 입 니 다.
tomcat 서버 처리 의 사 고 는 차단 기 를 써 서 돌아 오 는 모든 페이지 header 에 Access - Control - Allow - Origin: *, 간단 하고 거 칠 게,
첫 번 째 단 계 는 차단기 자바 파일 을 작성 하고 jar 로 포장 하여 tomcat 디 렉 터 리 에 놓 인 lib 폴 더 입 니 다.
package com.game

import javax.servlet.*;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

public class SelfFilter implements Filter {

    @Override
    public void init(FilterConfig filterConfig) throws ServletException {

    }

    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
        HttpServletResponse httpResponse = (HttpServletResponse) servletResponse;
        httpResponse.addHeader("Access-Control-Allow-Origin", "*");
        filterChain.doFilter(servletRequest, servletResponse);
    }

    @Override
    public void destroy() {

    }
}

두 번 째 단 계 는 tomcat 디 렉 터 리 에 있 는 conf / web. xml 파일 에 대응 하 는 설정 을 추가 합 니 다.
	
		SelfFilter
		com.game.SelfFilter
	
	 
	
		SelfFilter
		/*
	

tomcat 를 시작 합 니 다. 다음 그림 과 같 으 면 성공 합 니 다.

 
springboot http 서버 는 훨씬 간단 합 니 다. Get Handler 에 대응 하 는 함수 입구 에 주 해 를 추가 하면 됩 니 다.

주 소 를 게임 의 http 서버 주소 로 쓰 면 됩 니 다.

좋은 웹페이지 즐겨찾기