Java “如何解决错误代码”;405“;关于API调用与测试?
在IntelliJ的运行模式下测试API调用时,我收到错误代码“405”。然而,当我测试API cal时;在邮递员中使用相同的参数,它可以工作 我正在编写一个自动存储塔,用户必须登录才能使用它。登录表单工作正常,当我尝试使用Postman登录时,它也会成功登录。然而,当我在IntelliJ上运行代码时,它会给我错误代码“405”,这意味着“不允许使用方法” 我的userController类代码,它可以工作:Java “如何解决错误代码”;405“;关于API调用与测试?,java,maven,api,testing,rest-assured,Java,Maven,Api,Testing,Rest Assured,在IntelliJ的运行模式下测试API调用时,我收到错误代码“405”。然而,当我测试API cal时;在邮递员中使用相同的参数,它可以工作 我正在编写一个自动存储塔,用户必须登录才能使用它。登录表单工作正常,当我尝试使用Postman登录时,它也会成功登录。然而,当我在IntelliJ上运行代码时,它会给我错误代码“405”,这意味着“不允许使用方法” 我的userController类代码,它可以工作: @PostMapping(value = "/login", consumes = M
@PostMapping(value = "/login", consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE)
public String login(@RequestBody MultiValueMap<String, String> body){
String email = body.getFirst("email");
String username = body.getFirst("username");
String password = body.getFirst("password");
return userService.loginUser(email, username, password);
}
最后是我测试POST登录方法的代码:
//User control
@Test
public void checkLogin(){
given()
.param("email", "123")
.param("username", "123")
.param("password", "123")
.when()
.get("/login")
.then()
.statusCode(200);
}
希望有人能帮我解决这个问题
提前谢谢
405
表示不允许使用该方法。发生这种情况的原因是,您正在公开一个POST
操作(@PostMapping(value=“/login”,consumes=MediaType.APPLICATION\u FORM\u URLENCODED\u value)
,但试图通过GET
:.when().GET(“/login”)
//User control
@Test
public void checkLogin(){
given()
.param("email", "123")
.param("username", "123")
.param("password", "123")
.when()
.get("/login")
.then()
.statusCode(200);
}