方式一:利用URL
- HTTP GET:
- https://test.com/app/appversion-1/versiontest/vn1
方式二:利用用户自定义的request header
- HTTP GET:
- https://test.com/app/versiontest/vn2
- api-version: 2
方式三:利用content type
- HTTP GET:
- https://test.com/app/versiontest/vn3
- Accept: application/vnd.haveibeenpwned.v2+json
方式四:利用content type
- HTTP GET:
- https://test.com/app/versiontest/vn4
- Accept: application/vnd.haveibeenpwned+json; version=2.0
这个方式和方式三的小不同的地方是,把版本号分离出来了。
方式五:利用URL里的parameter
- HTTP GET:
- https://test.com/app/versiontest/vn5?v=2
个人喜欢第二种
- @Controller
- @RequestMapping(headers="app-version=2")
- public class TestVsersionController {
- }