Merge pull request #5 from hawkowl/py3

Port channels to py3
This commit is contained in:
Andrew Godwin 2015-07-13 00:18:28 -05:00
commit dfc11d4a67
4 changed files with 17 additions and 6 deletions

View File

@ -8,8 +8,8 @@ def encode_request(request):
""" """
# TODO: More stuff # TODO: More stuff
value = { value = {
"GET": request.GET.items(), "GET": list(request.GET.items()),
"POST": request.POST.items(), "POST": list(request.POST.items()),
"COOKIES": request.COOKIES, "COOKIES": request.COOKIES,
"META": {k: v for k, v in request.META.items() if not k.startswith("wsgi")}, "META": {k: v for k, v in request.META.items() if not k.startswith("wsgi")},
"path": request.path, "path": request.path,

View File

@ -1,4 +1,5 @@
from django.http import HttpResponse from django.http import HttpResponse
from six import PY3
def encode_response(response): def encode_response(response):
@ -10,8 +11,10 @@ def encode_response(response):
"content_type": getattr(response, "content_type", None), "content_type": getattr(response, "content_type", None),
"content": response.content, "content": response.content,
"status_code": response.status_code, "status_code": response.status_code,
"headers": response._headers.values(), "headers": list(response._headers.values()),
} }
if PY3:
value["content"] = value["content"].decode('utf8')
response.close() response.close()
return value return value

View File

@ -1,6 +1,7 @@
import types import types
from django.apps import apps from django.apps import apps
from six import PY3
def auto_import_consumers(): def auto_import_consumers():
""" """
@ -12,7 +13,12 @@ def auto_import_consumers():
try: try:
__import__(module_name) __import__(module_name)
except ImportError as e: except ImportError as e:
if "no module named %s" % submodule not in str(e).lower(): err = str(e).lower()
if PY3:
if "no module named '%s'" % (module_name,) not in err:
raise
else:
if "no module named %s" % (submodule,) not in err:
raise raise

View File

@ -175,7 +175,9 @@ to test your new code::
socket.onmessage = function(e) { socket.onmessage = function(e) {
alert(e.data); alert(e.data);
} }
socket.onopen = function() {
socket.send("hello world"); socket.send("hello world");
}
You should see an alert come back immediately saying "hello world" - your You should see an alert come back immediately saying "hello world" - your
message has round-tripped through the server and come back to trigger the alert. message has round-tripped through the server and come back to trigger the alert.