문제

Django와 Pylons는 미들웨어의 작동 방식에 대한 다른 아이디어를 가지고있는 것으로 보입니다. 나는 철탑이 표준화 된 것을 따르는 것을 좋아합니다 PEP 333, 그러나 Django는 더 광범위한 채택을 가지고있는 것 같습니다. 둘 다 사용할 미들웨어를 작성할 수 있습니까?

Middleware와 관련된 프로젝트는 ESAPI라는 보안 툴킷을 Java에서 Python으로 포팅하고 있습니다. Java는 표준 지향적이기 때문에 프레임 워크가되는 것은 매우 쉽습니다. Python에서 다른 프레임 워크는 HTTPRequest 객체 및 미들웨어와 같은 기본적인 것들이 어떻게 작동하는지에 대한 다른 아이디어를 가지고 있으므로 더 어려워 보입니다.

분명히 새로운 사용자는 둘 이상의 하이퍼 링크를 게시 할 수 없습니다. Django 및 Pylons 미들웨어 정보에 대한 링크는 아래를 참조하십시오.

도움이 되었습니까?

해결책

Pylons는 표준 WSGI 미들웨어를 사용합니다. WSGI를 통해 Django를 배포하는 경우 해당 시점에서 WSGI 미들웨어를 사용할 수도 있습니다. 그러나 현재 settings.py의 표준 django middleware_classes 옵션을 통해 WSGI 미들웨어를 사용할 수 없습니다.

즉, 현재 Django 자체에서 WSGI 미들웨어를 사용할 수있는 Google Summer of Code 프로젝트가 있습니다. 이 프로젝트의 상태를 따르지 않았지만 코드는 HTTP WSGI 개선 지점.

다른 팁

Pylons의 경우 미들웨어라는 용어는 WSGI를 의미합니다.PEP 333) Middleware, Django는 미들웨어에 대한 자체 내부 메커니즘을 의미합니다.

그러나 Apache+에서 Django를 실행하는 경우mod_wsgi (예 : mod_python 또는 lighttpd+flup 대신) django에 WSGI 미들웨어를 포함시킬 수도 있습니다. WSGI 미들웨어에서 찾을 수있는 많은 기능이 이미 Django Off 또는 Django Middleware에 내장되어 있기 때문에 일반적으로 수행되지는 않습니다.

WSGI와 Django Middleware의 차이점은 두 가지 사이에서 코드를 변환하기에 충분히 쉽습니다. 더 어려운 문제는 ORM과 같은 외부 라이브러리를 사용할 때입니다.

그만큼 WSGI 위키 좋은 목록이 있습니다 WSGI 미들웨어.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top