当由必要为一个响应表达没有被当前状态码定义的语义的时候,新状态码可以被注册。状态码是通用的;他们可能使用于任何的资源,而不仅是一种特定的媒体类型,资源种类或HTTP应用。这样,新状态码应该注册在不是特定于一中应用的文档中。

    新状态码被要求归属于第6节定义的一个分类。为了允许已存的解析器处理响应消息,新的状态码不能禁用负载,虽然他们可以要求一个0长度的负载体。

    建议对所有还没有被广泛部署的新状态码应该避免为编号分配一个具体的数字,直到有清晰的共识他将被注册;取而代之的,早期草案可以使用一个符号如“4NN”,或“3N0”..“3N9”来表明建议的状态码类别而不用过早的消耗 一个数字。

    新状态码的定义应该解释造成响应包含那个状态码的请求场景(例如,请求头字段和/或方法的组合)和对响应头字段的任何依赖(例如,什么字段被要求,什么字段可以修改语义,以及在使用新状态码的时候什么头字段语义被进一步重定义)。

    新状态码的定义应该指明它是否可以缓存。注意如果响应中有明确的信息段信息,所有的状态码都可以缓存;而被定义为可缓存的状态码在没有明确新鲜度信息时允许被缓存。同样,状态码的定义可以在缓存行为上放置约束。查看RFC7234了解更多信息。

    最后,新状态码的定义应该表明负载体是否与标识的资源有任何默示的关联。