0

如果我这样做:

@GET
    @Path("/users")
    @Produces("application/json")
    public String users()
    {
        String users = null;
        ArrayList<User> userList = new ArrayList<User>();

        try {
                userList = new UserManager().getUsers();
                Gson gson = new Gson();
        users = gson.toJson(userList);

    } catch (Exception e) {
                e.printStackTrace();
        }
        return users;
    }

我的 GET 方法只是返回 JSON 中的信息。但我也希望它返回 XML 吗?类似的东西@Produces({"application/xml", "application/json"})

我该怎么做?

4

1 回答 1

2

我不确定您在这里使用的是什么框架,但这并不特别重要 - 您不能在同一个请求中返回两种格式(以合理的方式)。对于Content-Type给定的响应,标头仅存在一次,因此它不能同时是application/jsonand application/xml

这里的常见习惯用法是允许一个GET参数,该参数指定客户端希望返回数据的格式 - alahttp://example.com/path/to/rest/data?type=JSONhttp://example.com/path/to/rest/data?type=XML.

于 2013-03-16T09:52:30.040 回答