如何在浏览器中指定Restlet响应的格式?

时间:2010-04-27 19:59:49

标签: url rest restlet

我开始将自己介绍给REST。我用作REST框架Restlet。 我已经使用几种响应格式(如

)为GET定义了一个资源
@Get("xml")
@Get("json")

我现在想用我的浏览器测试我定义的响应格式,但我不知道我必须在我的URL中指定哪个参数来获取格式。 类似的东西:

http://localhost:8182/members?type=xml

我尝试了一些参数名称,但是我找不到合适的参数名称。我知道必须有这样一个参数,因为我已经在URL中看到过它,但我忘记了名字而无法在网上找到它。 使用restlet时该参数的名称是什么?

如果有人可以帮助我,我会很高兴, 谢谢, 马丁

3 个答案:

答案 0 :(得分:5)

Martin使用Restlet API来定义自己更简单的注释(例如ash @Get)。 Restlet Framework支持JAX-RS API和注释(例如@ GET,@ Produces等),但作为扩展的一部分。

要在浏览器中选择媒体类型,您需要使用“media = xml”查询参数而不是“type = xml”,但这可以在您的Restlet应用程序实例的TunnelService中配置。

希望这会有所帮助。如需进一步帮助,请使用Restlet邮件列表: http://www.restlet.org/community/lists

祝你好运

答案 1 :(得分:3)

尝试将请求中的“接受”标题设置为“text / xml”或“text / json”。

我还想过,如果你想在某个mime类型中返回一个资源,你使用了@Produces("text")注释,而不是@GET(除非这是新方法)。嗯..我根据API看到你可以用@GET。

我相信您要查找的URI参数是?media = json

答案 2 :(得分:0)

我正在使用示例项目 org.restlet.example.serialization.gae.server 这个帖子帮助了我,所以我做了一些小改动(只是在引号和括号中添加了“json”)来获得JSON响应:

@Get("json")
public Contact retrieve() {
    return contact;
}