나는 밑줄이있는 나머지 헤더에 문제가있어, 인쇄하는 동안 나머지 헤더 값을 얻지 못하고있다.파이썬 보틀 레스트 헤더가 밑줄을 사용하지 않음
누군가 내가이 작업을 어떻게 수행 할 수 있었는지 알았습니까?
감사합니다.
나는 밑줄이있는 나머지 헤더에 문제가있어, 인쇄하는 동안 나머지 헤더 값을 얻지 못하고있다.파이썬 보틀 레스트 헤더가 밑줄을 사용하지 않음
누군가 내가이 작업을 어떻게 수행 할 수 있었는지 알았습니까?
감사합니다.
머리글 이름에 밑줄을 사용하지 말고 구분 기호로 대시 만 사용해야합니다.
Apache 및 nginx와 같은 주요 웹 서버와 일부 Python WSGI 서버/프레임 워크는 헤더 스푸핑을 피하기 위해 밑줄이있는 헤더를 버리게됩니다.
당신은 헤더가 상상 :
가 CGI에서My-Header: value
이/WSGI를 변수로 변환됩니다 :
HTTP_MY_HEADER: value
응용 프로그램으로 전달합니다.
My_Header: value
같은 매핑 :
문제는 헤더가 있다는 것입니다.
위험은 클라이언트가이를 사용할 수 있으며 프록시와 같은 서버와 응용 프로그램이 처리 할 때 원본을 덮어 쓰도록 고의적으로 시도 할 수 있다는 점입니다.
잠재적 인 보안 문제이므로 서버는 영숫자와 대시가 포함 된 헤더 만 통과시키고 다른 것은 버려집니다.
안녕하세요 그레이엄, 하지만이 변경 사항은 클라이언트 측에도 적용되기 때문에 갑자기 작업이 중지됩니다. 지금은 변경할 수 없습니다. –
어떤 WSGI 서버를 사용하고 있습니까? WSGI 서버가 최근에 업그레이드 되었습니까? –
Apache/2.4.18 (우분투) mod_wsgi/4.3.0 Python/2.7.12가 구성되었습니다. –
헤더에 밑줄을 사용하지 마십시오. 일을하곤 했어도 멈춰야합니다. –