为了账号安全,请及时绑定邮箱和手机立即绑定

post方法没有问题,但是get方法为什么返回404?debug时不走方法

@Bean   //路由函数
@Autowired  //注入用户仓储,保证数据来源(方法注入)
public RouterFunction<ServerResponse> personFindAll(UserRepository userRepository){
   return RouterFunctions.route(RequestPredicates.GET("/person/find/all"),
            request ->{
                //返回所有用户对象
                Collection<User> users = userRepository.findAll();
                Flux<User> userFlux = Flux.fromIterable(users);
                return ServerResponse.ok().body(userFlux, User.class);
            });
}


正在回答

7 回答

你的类上面加了@Configuration注解么?

2 回复 有任何疑惑可以回复我~
#1

qq_慕竹_0 提问者

注解加了,可惜加错注解了,都怪我太粗心了,谢谢
2019-03-04 回复 有任何疑惑可以回复我~
#2

慕粉3169703 回复 qq_慕竹_0 提问者

我跟你写的一样,也加了@Configuration,为什么访问接口的时候还报404。。。
2019-03-31 回复 有任何疑惑可以回复我~

我也遇到这个404,就修改了pom文件,重启项目就好了。

我的pom文件如下:

    <dependencies>
        <!--<dependency>-->
        <!--<groupId>org.springframework.boot</groupId>-->
        <!--<artifactId>spring-boot-starter-web</artifactId>-->
        <!--</dependency>-->
<!--配置使用 jetty容器-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-tomcat</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <!--<dependency>-->
            <!--<groupId>org.springframework.boot</groupId>-->
            <!--<artifactId>spring-boot-starter-jetty</artifactId>-->
        <!--</dependency>-->

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-webflux</artifactId>
        </dependency>

        <!--<dependency>-->
        <!--<groupId>org.springframework.boot</groupId>-->
        <!--<artifactId>spring-boot-starter-tomcat</artifactId>-->
        <!--<scope>provided</scope>-->
        <!--</dependency>-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>io.projectreactor</groupId>
            <artifactId>reactor-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>


0 回复 有任何疑惑可以回复我~

我的是依赖的问题,需要去掉web依赖,然后添加的依赖是这个

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-webflux</artifactId>
</dependency>
;
而之前报404的是因为我的依赖是这个
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webflux</artifactId>
</dependency>


0 回复 有任何疑惑可以回复我~

检查三个:1、端口是否正确,2、添加配置注入标识 @Configuration 3、路径确保正确。如果以上三个都没有问题就不会报错了,404就是找不到路径,课件里是“//”,如果你报错404 试一下"/" 。

如果以上全部正确还是报错,检查一下你时使用的webflux启动的么?还是你用idea创建默认服务器是Tomcat,如果是Tomcat,及时服务器使用正确,也不查找执行routerfunction , 需要修改启动服务器方式。再重新执行就可以了。

0 回复 有任何疑惑可以回复我~

我都没有加web依赖 其他的也都检查过了 但是debug还是不进方法体

0 回复 有任何疑惑可以回复我~

我也是,Get请求出现错误信息404,路径也没写错,注解也加了,头疼,你发现错误了吗


0 回复 有任何疑惑可以回复我~
#1

大橙儿

pom文件去掉web依赖,只留下webflux的依赖 就可以了
2019-04-20 回复 有任何疑惑可以回复我~
#2

weixin_慕码人8571305 回复 大橙儿

去掉了,可是还是404
2019-04-30 回复 有任何疑惑可以回复我~
#3

LACP3 回复 大橙儿

老哥, 能讲一下为什么去掉web依赖就没问题么
2019-05-09 回复 有任何疑惑可以回复我~
#4

夏日娃1235 回复 大橙儿

大佬说的对,有用。
2019-05-21 回复 有任何疑惑可以回复我~
查看1条回复

我加了 这个

@Configurable

所以错了

得加这个

@Configuration

0 回复 有任何疑惑可以回复我~
#1

慕粉3169703

加了,仍然没有进到第二个参数的方法体里面
2019-03-31 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

post方法没有问题,但是get方法为什么返回404?debug时不走方法

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信