Django根据Django文档转换自定义标题:
除了CONTENT_LENGTH和CONTENT_TYPE之外,如上所述,请求中的任何HTTP头都将转换为META密钥,方法是将所有字符转换为大写,用下划线替换任何连字符,并在名称中添加HTTP_前缀。因此,例如,名为X-Bender的标头将映射到META密钥HTTP_X_BENDER。
这在我的开发(Django Runserver + SQLite)实例上按预期工作。在我的登台和生产实例(Apache + MySQL)上,Django还用下划线替换任何句点(。)。因此,com.example.api.token在我的开发实例上变为HTTP_COM.EXAMPLE.API.TOKEN。在我的登台和生产实例上,com.example.api.token变为HTTP_COM_EXAMPLE_API_TOKEN。
为什么会有差异?