Java 是Http头中的特殊字符;名称“;有效吗?
我最近使用自定义头来覆盖web应用程序的行为(a-b测试分配),以便通过浏览器进行测试。它的工作原理是,如果应用程序代码检测到具有特定命名约定的头名称,它将处理它们,并相应地采取行动 该功能在本地主机和其他内部环境(如qa)上工作。但当它上线时失败了(我们的应用程序是一个运行在tomcat上的公共网站,语言是Java 7;qa环境使用相同的技术) 根本原因是标题“命名”约定中有特殊字符,如点(.)和感叹号(!)。我感到非常困惑的是,它在内部环境中却能完美地工作,而在生产环境中却不能。你知道怎么回事吗Java 是Http头中的特殊字符;名称“;有效吗?,java,http,web-applications,web,http-headers,Java,Http,Web Applications,Web,Http Headers,我最近使用自定义头来覆盖web应用程序的行为(a-b测试分配),以便通过浏览器进行测试。它的工作原理是,如果应用程序代码检测到具有特定命名约定的头名称,它将处理它们,并相应地采取行动 该功能在本地主机和其他内部环境(如qa)上工作。但当它上线时失败了(我们的应用程序是一个运行在tomcat上的公共网站,语言是Java 7;qa环境使用相同的技术) 根本原因是标题“命名”约定中有特殊字符,如点(.)和感叹号(!)。我感到非常困惑的是,它在内部环境中却能完美地工作,而在生产环境中却不能。你知道怎么回
如果标题名称中没有特殊字符,我验证了生产代码是否有效。中定义了有效字符;“!”和“.”都是有效的。谢谢,我来看看。但它在某些环境下是如何工作的,比如localhost?因为服务器实现的质量不同?头名称中允许有一个句号。tchar=“!”/“#”/“$”/“%“/”&/“*”/“+”/“-“/”/“/”/“^”/“/”/“/”/“~”/位/字母