我正在尝试基于Railscasts #350 episode实现一个带有版本控制的简单 rails api 应用程序。我想通过Accept header以下格式提供版本来访问应用程序的特定 API 版本:application/vnd.rails5_api_test.v1. 当没有Accept header提供时,请求将被路由到应用程序的当前默认版本。为了处理这个问题,我api_constraints在我的lib directory路由中创建了一个文件。
我创建了应用程序的两个版本v1,并v2在其中,v1有Users resource和v2拥有Users and Comments resources。一切都按预期工作,除了当我通过使用 Postman 通过标头localhost:3000/comments传递版本1来请求 URL 时,我收到来自 的响应comments resource,显示所有评论。但我期待的回应是status: 404 Not Found,因为comments resource在版本2和请求的版本1。
这是来自服务器的响应:
Started GET "/comments" for 127.0.0.1 at 2016-04-01 20:57:53 +0530
Processing by Api::V2::CommentsController#index as application/vnd.rails5_api_test.v1 …Run Code Online (Sandbox Code Playgroud)