我正在使用django建立一个简单的网站.当您键入基址(目前是127.0.0.1:8000/)时,我使用django来显示一个视图,该视图会根据您的用户权限进行一些判断和重定向.(如果您有管理员权限,则转到/admin,如果您没有权限,则转到/home,如果您没有登录,则转到/login.)

当我发出该HTTP请求时,我得到重定向as I should,但我还在Django日志(log)中看到以下两个错误:

  1. 代码400,消息错误请求语法('\x16\x03\x01\x00\x95\x01\x00\x00\x91\x03\x01N\xaa\x9c\x08\x96\x7f\x92\xe9Z\x925\xcaY4\xa6\xa5\xab\xf2\x16\xfaT\x89\xe7\x8a\xc3\x99J)6\xfb\xc44\x00\x00H\xc0')
  2. "??N????Z?5?Y4?????T??ÙJ)6??4H?" 400 -

我把第一个祸不单行翻译成(增加空格以便于阅读):SYN ETX NUL NUL U SOH NUL NUL Q ETX NUL N 170 156 X r 246 STX 141 214 ? 143 EOT FS j 142 223 s 241 220 < 185 \ \ m 242 &

我当然可以理解为什么服务器不喜欢它作为请求,但是我不知道它来自哪里.

有什么 idea 吗?

非常感谢.

==============

以下是视图的代码:

def index(request):
    user = request.user
    admin_courses = []

    if (user.is_authenticated()):
        u_id = user.getUserId()
        my_enrollment = Enrollment.objects.filter(user_id=u_id)
        admin_enrollment = my_enrollment.filter(type="ADMIN")
        for enr in admin_enrollment:
            course = Course.objects.get(id=enr.getCourseId())
            admin_courses.append(course)
        if (len(admin_courses)>0):
            return HttpResponseRedirect('/admin')
        else:
            return HttpResponseRedirect('/home')
    return HttpResponseRedirect('/login')

推荐答案

为了解决实际问题,如果您试图通过https访问django服务器,就会出现这种情况.切换回http,错误就会消失.

Django相关问答推荐

通过Model Form以编程方式设置Date TimeRangeField

DRF中没有参数的视图的警告-壮观

如何保护单个数据库行/模型实例?

DJANGO 获得模型中发现的第一、第二和第三大价值

过滤查询以获取两个朋友之间的聊天消息?

Django:获取每组最新的N条记录

int_list_validator在 Django 表单中不起作用

如何在 django 的列表中查找所有对象作为对象?

如何在 django 中修改现有模型实例?

未为部署的 django rest 框架加载静态文件

如何根据查询集中的条件返回多个聚合?

组织大型 Django 元素的指南

Django - 将 HTML 输出转换为变量

如何从 django 模板生成静态 html 文件?

如何在 django 中生成 url

如何在 Django 中向 ChoiceField 添加class?

virtualenv(python3.4), pip install mysqlclient 错误

超过 1 个外键

如何使 Django 的开发服务器公开?

python/django中setattr和对象操作的区别