이번 글은 python의 병프레임워크에서 크로스 도메인 요청 오류 보고 문제를 처리하는 방법을 주로 소개합니다. 필요한 친구는
파이썬을 사용하여 병 프레임워크를 개발할 때 프런트 엔드에서 도메인 간 액세스를 위해 ajax를 사용할 때js 코드가 항상 성공 입력에 실패하지만 오류가 입력되고 상태가 반환됩니다. 🎜>은 200입니다. 브라우저에서 직접 URL에 액세스하는 것이 정상입니다. 브라우저에서 F12를 누르면 다음과 같은 오류 메시지가 나타납니다.
XMLHttpRequest can load http://192.168.0.118: 8081/get_mobile_number/?id=1. 요청한 리소스에 'Access-Control-Allow-Origin' 헤더가 없습니다. 따라서 Origin 'null'은 액세스가 허용되지 않습니다.
검색 엔진을 통해 오류를 쿼리하면 찾은 답변이 거의 모두 도메인 간 문제라는 것을 알 수 있습니다. 외국 웹 사이트의 많은 솔루션은 기본 파일의 코드에 다음을 추가하기만 하면 됩니다. 이@hook('after_request') def enable_cors(): response.headers['Access-Control-Allow-Origin'] = '*'실제로 찾은 솔루션에 따라 추가한 후에도 여전히 오류가 발생했습니다. 브라우저의 http 헤더 출력을 보면 Access-Control-Allow-Origin:*이 표시되지 않았습니다. 아래와 같이 추가되었습니다. DEBUG를 통해 병 소스 코드를 입력하여 확인하세요 테스트해봤습니다 이 문제는 python2 및 python3에 해당하는 병 프레임워크에 존재합니다. 이 문제에 대해
class HTTPResponse(Response, BottleException): def init(self, body='', status=None, headers=None, **more_headers): super(HTTPResponse, self).init(body, status, headers, **more_headers) def apply(self, response): response._status_code = self._status_code response._status_line = self._status_line if self._headers: if response._headers: response._headers.update(self._headers) else: response._headers = self._headers response._cookies = self._cookies response.body = self.body
위 내용은 Python의 병 프레임워크에서 도메인 간 요청 오류 문제를 처리하는 방법에 대한 자세한 그래픽 및 텍스트 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!