首页 > 解决方案 > angular 4 post 请求不起作用,但邮递员能够将 post 请求发送到 spring boot 服务器?

问题描述

我能够使用邮递员在 Spring Boot 中成功地向我的 restcontroller 发送一个发布请求。 在此处输入图像描述

休息控制器如下:

@RequestMapping(value="/performaction",method=RequestMethod.POST,consumes = "application/json", produces = "application/json")
    public void performReboot(@RequestBody PerformAction performAction) {
         System.out.println("......rebooting blade to performRebootservice...........for blade id :: : ::"+performAction.getBladeId() +performAction.getActionName());

 ..........
    }

    @Bean
    public WebMvcConfigurer corsConfigurer() {
        return new WebMvcConfigurerAdapter() {
            @Override
            public void addCorsMappings(CorsRegistry registry) {
                registry.addMapping("/**").allowedOrigins("*");
            }
        };
    }

但是我无法从我的角度发送这个帖子请求,请求如下:

const headers = new HttpHeaders().set("Content-Type", "application/json");

    return this.http.post(this.performactionUrl, {"bladeId" : 2,"actionName" : "reboot"},{headers});

注意:我从这里添加了 WebMvcConfigurer !

谢谢。

标签: angularspring-mvcspring-bootcross-domainpostman

解决方案


如果不使用subscribe方法,您的 api 永远不会被调用。只需在您的组件中使用订阅方法。


推荐阅读