django-sslserver 및 Pillow를 사용하는 동안 장고 1.11보기에서 이미지를 반환하려고합니다. 다음은 내가 테스트를 위해 만든 최소한의 견해입니다. 내 템플릿에서django-sslserver를 사용하여 장고보기에서 이미지 반환
def get_image(request):
img = Image.open('oh_noes_cat.png', mode='r')
response = HttpResponse(content_type='image/png')
img.save(response, 'png')
return response
내가 사용
urls.py에서<img src={% url "get_image" %} />
, 내가 사용 :
url(r'^get_image.png', get_image, name='get_image')
이미지 응답이 장고의 runserver와 잘 작동하지만, 모두 장고 - sslserver에서 실패 django-extensions에서 runserver_plus를 실행하십시오. Chrome에서 깨진 이미지 아이콘과 'ERR_CONTENT_LENGTH_MISMATCH'오류가 표시됩니다.
이[26/Dec/2017 18:55:39] "GET /get_image.png HTTP/1.1" 200 0
Traceback (most recent call last):
File "/usr/lib/python3.5/wsgiref/handlers.py", line 138, in run
self.finish_response()
File "/usr/lib/python3.5/wsgiref/handlers.py", line 180, in finish_response
self.write(data)
File "/usr/lib/python3.5/wsgiref/handlers.py", line 279, in write
self._write(data)
File "/usr/lib/python3.5/wsgiref/handlers.py", line 453, in _write
result = self.stdout.write(data)
File "/usr/lib/python3.5/socket.py", line 593, in write
return self._sock.send(b)
File "/usr/lib/python3.5/ssl.py", line 861, in send
return self._sslobj.write(data)
File "/usr/lib/python3.5/ssl.py", line 586, in write
return self._sslobj.write(data)
ssl.SSLEOFError: EOF occurred in violation of protocol (_ssl.c:1844)
[26/Dec/2017 18:55:39] "GET /get_image.png HTTP/1.1" 500 59
사람 내가 장고 - sslserver 또는 장고 개발 환경에서 SSL을 지원하기위한 유사한 솔루션으로 이미지 응답 작업을 할 수있는 방법을 알고 있나요 :
내가 오류가 장고 - sslserver를 사용하는 경우? 검색했지만 특정 문제가있는 사람의 예를 찾을 수 없었습니다. 이 Image.save()이 문맥에서와, 당신이 이런 식으로 일을하려고 수있는 것을 완전히 명확하지 않다 때문에감사
이 솔루션이 도움이됩니까? "좋아, 그래서이 문제를 고칠 수있는 가장 쉬운 방법은'python3 -m pip install pyopenssl pyasn1 ndg-httpsclient'를 실행하는 것입니다. 문제가 해결되어야하지만 그렇지 않으면 더 적극적인 옵션을 추구 할 수 있습니다." from https://github.com/requests/requests/issues/3006#issuecomment-226784234 – Jorden
pyopenssl, pyasn1 및 ndg-httpsclient를 설치해도 불행히도 도움이되지 않습니다. – clairempr