스프링 부트 서비스에 대한 게시물 요청에 대해 Retrofit을 사용하고 있지만 항상 실패 콜백 메소드라고합니다.스프링 부트 서비스에 대한 POST 요청을 개정하십시오.
이@RestController
public class ServController {
@Autowired
private UserRepository userRepository;
@RequestMapping(value = "/user", method = RequestMethod.POST)
public Boolean signUpUser(@RequestBody User user)
{
return true;
}
}
내 클라이언트 인터페이스 :
public interface ChainApi {
public static final String USER_PATH = "/user";
@POST(USER_PATH)
public void signUpUser(@Body User user, Callback<Boolean> callback);
}
비동기 POST 요청이 :
User user = new User();
user.setId(12);
user.setName(nameEtx.getText().toString());
user.setEmail(emailEtx.getText().toString());
user.setPassword(passwordEtx.getText().toString());
RestAdapter restAdapter = new RestAdapter.Builder()
.setEndpoint(Constant.URL_LOCALHOST)
.build();
ChainApi service = restAdapter.create(ChainApi.class);
service.signUpUser(user, new Callback<Boolean>() {
@Override
public void success(Boolean aBoolean, Response response) {
Log.i(TAG, "Succesfull");
@Override
public void failure(RetrofitError error) {
Log.i(TAG, "Error " + error.getMessage()); // 400 Bad Request
}
});
이 내 사용자입니다
봄 부팅 서비스 (컨트롤러) : 이것은 내 간단한 코드입니다 수업 (POJO) :
@JsonIgnoreProperties(value = { "additionalProperties"})
public class User {
@JsonProperty("id")
private Integer id;
@JsonProperty("name")
private String name;
@JsonProperty("password")
private String password;
@JsonProperty("email")
private String email;
@JsonIgnore
private Map<String, Object> additionalProperties = new HashMap<String, Object>();
// methods
}
참고 : 저는 Android로 개발 중이며 우편 배달부에서 수동 POST 요청을 할 때 200 OK를 받았습니다. 또한 나는 로그 캣 메시지를 얻을 : 400 잘못된 요청
포스트는 –
이 마지막 부분 – kelvincer
에 내 게시물을 업데이트지고있어 오류가 귀하의 요청에서 무엇인가, 그것은 실종 아마도 뭔가를 좋아하지 않는 서버처럼 소리. 서버의 로그를 살펴보면 올바른 방향으로 사용자를 안내 할 것입니다. –