美文网首页《Django By Example》
Django2.0记request.META无法获取请求头相关数

Django2.0记request.META无法获取请求头相关数

作者: laotoutou | 来源:发表于2018-03-24 16:58 被阅读4次

    记一次Django踩坑:Django中request.META中存放客户端请求头数据,按如下方式取出数据:

    request.META['some_key']
    

    这样可以获取客户端在请求头中存放的{'some_key':'some_data'}数据,但是这样不安全,推荐使用字典的get方法:

    request.META.get('some_key', None)
    

    这样的方式在本地调试没有任何问题,但是部署到服务器便出现了问题,输出request.META发现没有客户端传来的信息.
    我的服务端环境:

    • Nginx
    • gunicorn
    • django
    • supervisor

    看到rest-framework文档中有写到使用Apache配置Django时,有无法传递请求头的情况,但我用的是Nginx,后来尝试各种解决办法终于发现:
    使用类似'key'这样的键传递请求头可以被接收,但如果使用'some_key',加上一条下划线就不能被接收了!...
    暂不知道原因,现贴出解决办法,给同样碰到类似问题的同学.

    相关文章

      网友评论

        本文标题:Django2.0记request.META无法获取请求头相关数

        本文链接:https://www.haomeiwen.com/subject/tznqcftx.html