DingoApi 版本的诡异问题!版本不生效 ?

有人遇到很奇怪的问题吗?

    必须配置API_VERSION=v2,才显示 this is version v2
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 11
liyu001989

你可能需要截个图,给我们看一下你的 env 中 dingo 相关的配置 和请求的时候 header 加对了没有

6年前 评论

你好我粘贴代码吧
env file:

file

header

file

6年前 评论
Jourdon

Httper 头 加了 Accept: application/prs.larabbs.v1+json 所以显示 v1 很正常。把 v1 改成 v2 就可以了

6年前 评论

@Jourdon
假设把API_VERSION=2和请求头 Accept: application/prs.larabbs.v1+json 组合返回的就是强制是v2的接口回应
假设把请求头改成API_VERSION=1 Accept: application/prs.larabbs.v1+json 组合返回的就是强制是v1的接口回应
假设把请求头改成API_VERSION=1 Accept: application/prs.larabbs.v2+json 组合返回的就是强制是v1的接口回应

貌似回应只和API_VERSION有关了

6年前 评论

@Jourdon 我可以发代码给你 /微笑

6年前 评论
Jourdon

@codewithyou

API_VERSION
默认的 API 版本,当我们没有传 Accept 头的时候,默认访问该版本的 API。一般情况下配置 v1 即可。

这里说的很清楚,默认走 API_VERSION 如果有 Accept 头,就走 Accept头。

6年前 评论
Jourdon

@Jourdon

貌似回应只和API_VERSION有关了

这个你确定测试过?

6年前 评论

@Jourdon 是不是我在header当中传递v2的时候,路由当中不应该走version('v1')这里面?可是代码当中确实走了

6年前 评论
Jourdon

@TranceLin

可是代码当中确实走了

什么意思?没看懂, header 中传的是 v2, 路由就走 v2 。结果就是postman 里面显示的就是v2

6年前 评论

我也遇到了同样的问题,header头信息传的版本不起作用,3年前的问题解决了吗?

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!