使用Android Annotation REST服务的POST请求

3 rest spring android android-annotations

我在我的项目中使用Android Annotation并尝试POST通过以下代码发送请求,但是在下面的代码中出现了问题,因为我没有按预期得到响应:

@Rest(rootUrl = "http://xyz.com", converters = {GsonHttpMessageConverter.class})
public interface A {

    @Post("/authenticate/email/")
    public Object attemptLogin(Map data);
}
Run Code Online (Sandbox Code Playgroud)

哪里data(key, value)对.我有什么遗漏也许我必须设置request-headerdata不应该是JSON吗?

小智 7

使用Android-AnnotationsRest客户端找到了解决方案.

与GET请求一样,使用Android-Annotations发送POST请求非常简单.一个区别是您需要定义要作为自定义类发送的参数(例如下面示例中的Event类),或者如果要动态控制它,则需要Map(例如MultiValueMap).请求的url仍然可以使用{...}中包含的变量以类似的方式构造,并且响应可以像在GET请求中一样处理.

@Post("/events")
void addEvent(Event event);

@Post("/events/{id}")
void addEventById(Event event, long id);

@Post("/authenticate/event/")
Object authenticateEventData(MultiValueMap data);
Run Code Online (Sandbox Code Playgroud)