클래스 기반 뷰, 응답 헤더 및 CORS

구매

이것이 매우 기본적인 질문이라면 사과하지만 웹 개발에 비교적 익숙하지 않고 오늘 대부분의 문제에 대해이 문제를 해결해 왔습니다. 어떤 도움이라도 대단히 감사합니다.

1. 일반 클래스 기반 뷰

나는 정말로 여기 튜토리얼을 진행하고 내 기본 요구에 맞게 이것을 수정하고 다음과 같은 기본 뷰로 끝났습니다.

class EList(generics.ListCreateAPIView):
    model = trax 
    #permission_classes = (permissions.IsAuthenticatedOrReadOnly,)
    serializer_class = TraxSerializer

이 API에 게시되는 것은 내가 구축하고있는 외부 서비스로, 교차 출처 리소스 공유 문제 (CORS)에 직면하고 있음을 의미합니다. 이상적으로는 헤더를 다음과 같이 설정해야 ["Access-Control-Allow-Origin"] = "*"하지만이를 검색 한 후에도 이러한 일반 클래스 기반 뷰를 사용하여이를 수행하는 방법을 잘 모르겠습니다. 이것이 가능하고 내가 잘못된 곳을 찾고 있었습니까?

Tom이 가능하다고 언급 한이 게시물 을 찾았 지만 위의 관점에서이 작업을 수행 할 수 없어 다음 단계로 넘어갑니다.

2.) 클래스 기반 뷰

헤더 설정에 대해 좀 더 유연하게 시도하고 CORS에 대한 게시물에서 찾은 내용을 시도하기 위해 다음과 같이 표준 클래스 기반 뷰로 되돌리기로 결정했습니다.

class EList(APIView):
    """
    List all snippets, or create a new snippet.
    """
    def get(self, request, format=None):
        trax = trax.objects.all()
        serializer = TraxSerializer(trax, many=True)
        return Response(serializer.data)
    def post(self, request, format=None):  
        serializer = TraxSerializer(data=request.DATA)
        if serializer.is_valid():
            serializer.save()
            return Response(serializer.data, status=status.HTTP_201_CREATED)
        return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)

그러나 다음과 같은 오류가 발생합니다.

.model또는 .queryset속성 이없는 뷰에는 DjangoModelPermissions를 적용 할 수 없습니다 .

여기에 응답 헤더를 설정해 볼 수있는 방법이 있습니까? 이것은 내 현재 권한이기도합니다.

'DEFAULT_PERMISSION_CLASSES': [
        'rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly',
    ]

도움을 주셔서 감사합니다.

마리오 데프

이 작업을 수행하려면 외부 웹 서비스가 원본 간 요청을 할 수 있도록 허용해야합니다. 가장 쉬운 방법은 django-cors-headers 패키지 를 설치 하고 다음 settings.py과 같이 서비스 호스트 이름을 추가하는 것입니다.

CORS_ORIGIN_WHITELIST = (
    'myservice.com',
)

myservice.comajax 호출을 수행하는 외부 서비스는 어디에 있습니까 ? 또한 이 설정 지침 을 따르는 것을 잊지 마십시오 .

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Python Django-뷰에서 응답 헤더에 액세스

분류에서Dev

HTTP 응답 대신 클래스 기반 뷰에서 JSON 응답을 반환하는 방법

분류에서Dev

Rack-cors 및 Grape로 사용자 지정 응답 헤더 추가

분류에서Dev

봄 부팅 GenericFilterBean, 클라이언트 측에서 필터 반환 오류 코드 및 응답 헤더

분류에서Dev

반응 및 클래스 가져 오기

분류에서Dev

Django 클래스 기반 뷰-쿼리 셋 필터링 및 저장

분류에서Dev

Mockito : 응답 헤더 및 상태 확인

분류에서Dev

를 EndPoint 클래스의 봄 WS SOAP 응답 헤더 수정

분류에서Dev

'중간'및 더 큰 뷰포트의 팻 부 스트랩 헤더?

분류에서Dev

TLS, 헤더 및 프록시 : 클라이언트에 응답하는 방법?

분류에서Dev

IIS에서 CORS 응답 헤더 (간헐적으로)가 반환되지 않음-Web API

분류에서Dev

응답 본문에 쓸 때 빈 헤더 및 응답 본문

분류에서Dev

반응 / 표현 사이의 CORS 헤더 문제

분류에서Dev

Angular 8-HttpInterceptor-응답 헤더 읽기

분류에서Dev

PHP 응답 헤더 가져 오기

분류에서Dev

응답 헤더 읽기 문제

분류에서Dev

Flask에서 응답 헤더 설정시 CORS 오류

분류에서Dev

524 응답에 CORS 헤더가 없습니다.

분류에서Dev

Django 클래스 기반 뷰 : 뷰 클래스의 인수 이해

분류에서Dev

반응-동적 및 클래스 이름

분류에서Dev

슬러그 및 클래스 기반 뷰를 사용할 때 뷰를 찾지 못함

분류에서Dev

Django 클래스 기반 뷰 예제

분류에서Dev

springdoc의 기본 응답 클래스

분류에서Dev

Django : 클래스 기반 뷰 내에서 콘텐츠 유형 헤더를 text / xml로 설정하는 방법은 무엇입니까?

분류에서Dev

CORS 프리 플라이트 OPTIONS 요청 및 후속 GET / POST / etc에 대한 응답으로 다시 보낼 Access-Control- * 헤더 의뢰?

분류에서Dev

Polly는 URL, 헤더, 콘텐츠 및 응답으로 모든 요청을 기록합니다.

분류에서Dev

Dart : JSON 응답을 기반으로 동적 클래스 생성

분류에서Dev

Django 1.8에서 로그인 및 로그 아웃 클래스 기반 뷰 만들기

분류에서Dev

NestJS 및 Passport-Guard에서 응답 헤더 설정

Related 관련 기사

  1. 1

    Python Django-뷰에서 응답 헤더에 액세스

  2. 2

    HTTP 응답 대신 클래스 기반 뷰에서 JSON 응답을 반환하는 방법

  3. 3

    Rack-cors 및 Grape로 사용자 지정 응답 헤더 추가

  4. 4

    봄 부팅 GenericFilterBean, 클라이언트 측에서 필터 반환 오류 코드 및 응답 헤더

  5. 5

    반응 및 클래스 가져 오기

  6. 6

    Django 클래스 기반 뷰-쿼리 셋 필터링 및 저장

  7. 7

    Mockito : 응답 헤더 및 상태 확인

  8. 8

    를 EndPoint 클래스의 봄 WS SOAP 응답 헤더 수정

  9. 9

    '중간'및 더 큰 뷰포트의 팻 부 스트랩 헤더?

  10. 10

    TLS, 헤더 및 프록시 : 클라이언트에 응답하는 방법?

  11. 11

    IIS에서 CORS 응답 헤더 (간헐적으로)가 반환되지 않음-Web API

  12. 12

    응답 본문에 쓸 때 빈 헤더 및 응답 본문

  13. 13

    반응 / 표현 사이의 CORS 헤더 문제

  14. 14

    Angular 8-HttpInterceptor-응답 헤더 읽기

  15. 15

    PHP 응답 헤더 가져 오기

  16. 16

    응답 헤더 읽기 문제

  17. 17

    Flask에서 응답 헤더 설정시 CORS 오류

  18. 18

    524 응답에 CORS 헤더가 없습니다.

  19. 19

    Django 클래스 기반 뷰 : 뷰 클래스의 인수 이해

  20. 20

    반응-동적 및 클래스 이름

  21. 21

    슬러그 및 클래스 기반 뷰를 사용할 때 뷰를 찾지 못함

  22. 22

    Django 클래스 기반 뷰 예제

  23. 23

    springdoc의 기본 응답 클래스

  24. 24

    Django : 클래스 기반 뷰 내에서 콘텐츠 유형 헤더를 text / xml로 설정하는 방법은 무엇입니까?

  25. 25

    CORS 프리 플라이트 OPTIONS 요청 및 후속 GET / POST / etc에 대한 응답으로 다시 보낼 Access-Control- * 헤더 의뢰?

  26. 26

    Polly는 URL, 헤더, 콘텐츠 및 응답으로 모든 요청을 기록합니다.

  27. 27

    Dart : JSON 응답을 기반으로 동적 클래스 생성

  28. 28

    Django 1.8에서 로그인 및 로그 아웃 클래스 기반 뷰 만들기

  29. 29

    NestJS 및 Passport-Guard에서 응답 헤더 설정

뜨겁다태그

보관