我开发一个API尽可能宁静(虽然HATEOAS限制不符合因此它不是一个REST API 本身)
我正在对API进行版本控制,因为有几种方法可以做到这一点,我想我将使用Accept标头.我确实知道其他选择,但这个问题的目的不是找到一种合适的API版本.
据我所知,有使用Accept头,因为看到有两种方法来版API 在这里,这里和这里:
application/vnd.company.myapp-v1+json
Run Code Online (Sandbox Code Playgroud)
或使用限定符
application/vnd.company.myapp+json;v=1
Run Code Online (Sandbox Code Playgroud)
虽然这很清楚,但我知道所有x-自定义内容类型都已弃用,vnd.内容类型必须在IANA注册.
API不会也不会公开,所有使用它的客户都是内部开发的.
正在注册自定义vnd.IANA强制要求的内容类型?如果未注册内容类型会发生什么?application/vnd.company.myapp+json;v=2即使没有在IANA注册,我是否可以简单地使用Accept标头?
由于我需要一个纯粹用于版本化目的的内容协商的自定义内容类型,我可以使用限定符,如application/json;v=2?
我正在使用Zend Framework 1.12.3来开发我正在开发的项目.
我使用过滤器输入,需要确保该值在特定值(ENUM)内.(例如,频率必须是"即时","每日"或"每周").
我怎么能做到这一点?
谢谢