2016-09-06 87 views
2

我已將Katharsis與spring-boot(MVC + Security)集成在一起,我真的很高興。Katharsis與發佈JSON的標準彈簧mvc控制器返回400

@SpringBootApplication 
@Import(KatharsisConfigV2.class) 
@Configuration 
public class Application { 
    public static void main(String[] args) { 
     SpringApplication.run(Application.class, args); 
    } 
} 

我開始使用額外的彈簧mvc控制器設置安全性來處理登錄和註銷方法。

但是使用RequestBody註解參數將json轉換爲java對象,我得到了一個400響應,告訴我所需的body缺失。

@RequestMapping(value = "/auth/signup", method = RequestMethod.POST) 
public @ResponseBody AuthenticationResponse signup(
     @RequestBody AuthenticationRequest authenticationRequest) { 
    ... 
} 

當我刪除導入Katharsis配置,一切都很好。

@SpringBootApplication 
//@Import(KatharsisConfigV2.class) 
@Configuration 
public class Application { 
    public static void main(String[] args) { 
     SpringApplication.run(Application.class, args); 
    } 
} 

我怎麼能調整我的項目配置爲允許基本春天控制器接受標準JSON?

在此先感謝

+0

沒有人可以幫助你,當你不顯示你的代碼。 – luboskrnac

+0

你有沒有想過這個? – hvgotcodes

回答

0

中有什麼response"detail"場的確切消息? Katharsis-Spring提供體面的錯誤細節。這應該能讓你更清楚地知道什麼是錯的。

請記住,JSON API中的POST body將爲differ from how they look in regular Spring,例如,您的有效負載中需要有一個"data"字段。

您可能還需要在application.properties文件中配置Katharsis。 Katharsis無法處理請求,除非它是configured properly

希望這會有所幫助。