4

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

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

    @Post("/authenticate/email/")
    public Object attemptLogin(Map data);
}

data对在哪里(key, value)。有什么我遗漏的可能我必须设置request-header还是data不应该是 JSON?

4

1 回答 1

8

使用 Android-Annotations 从 Rest 客户端找到了解决方案。

与 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);
于 2013-01-24T13:48:54.397 回答