Java 是否有一种方法可以在使用浏览器中的URL访问web服务时指定媒体类型[纯粹用于测试目的]
我想测试我的RESTWeb服务。 是否有一种方法可以在从浏览器点击URL时指定媒体类型。我知道我可以通过使用HttpClient来实现这一点,在HttpClient中我可以显式地指定MIME类型,但是我想使用我的浏览器来测试它。 假设我有三种方法可以生成XML/JSON/HTML:Java 是否有一种方法可以在使用浏览器中的URL访问web服务时指定媒体类型[纯粹用于测试目的],java,rest,Java,Rest,我想测试我的RESTWeb服务。 是否有一种方法可以在从浏览器点击URL时指定媒体类型。我知道我可以通过使用HttpClient来实现这一点,在HttpClient中我可以显式地指定MIME类型,但是我想使用我的浏览器来测试它。 假设我有三种方法可以生成XML/JSON/HTML: @GET @Produces(MediaType.TEXT_PLAIN) public String sayPlainTextHello() { return "Hello Jerse
@GET
@Produces(MediaType.TEXT_PLAIN)
public String sayPlainTextHello() {
return "Hello Jersey";
}
// This method is called if XML is request
@GET
@Produces(MediaType.TEXT_XML)
public String sayXMLHello() {
return "<?xml version=\"1.0\"?>" + "<hello> Hello Jersey" + "</hello>";
}
// This method is called if HTML is request
@GET
@Produces(MediaType.TEXT_HTML)
public String sayHtmlHello() {
return "<html> " + "<title>" + "Hello Jersey" + "</title>"
+ "<body><h1>" + "Hello Jersey" + "</body></h1>" + "</html> ";
}
@GET
@生成(MediaType.TEXT\u PLAIN)
公共字符串sayplantextHello(){
返回“Hello Jersey”;
}
//如果请求XML,则调用此方法
@得到
@生成(MediaType.TEXT\u XML)
公共字符串sayXMLHello(){
返回“+”Hello Jersey“+”;
}
//如果请求HTML,则调用此方法
@得到
@生成(MediaType.TEXT\u HTML)
公共字符串sayHtmlHello(){
返回“+”+“Hello Jersey”+“
+“+”你好,泽西衫“+”+“+”;
}
我可以明确地告诉我的浏览器点击一个特定的吗?浏览器扩展应该可以完成这项工作。我最喜欢的chrome扩展是
但是,像Stephane的指导一样,请考虑为API构建良好的测试平台。这项工作最好的收费工具是Wordnik的“招摇过市”。从文档中查看它:
如果资源类能够生成多个MIME媒体 键入,则选择的资源方法将对应于most 客户端声明的可接受媒体类型。更具体地说 HTTP请求的Accept标头声明最可接受的内容 因此,您的问题实际上是“如何控制GET请求中的“Accept”HTTP头?” 答案是使用像curl、wGet这样的工具,或者像postman(Chrome)或FireFox(FireFox)这样的浏览器扩展 此外: 以下是有关使用Chrome REST控制台的一些链接:REST控制台
就可以了。如果您想为非技术用户提供简单的访问,您应该考虑通过您的REST服务为他们提供一个web UI。REST控制台对我来说很有用……尽管我不得不向客户做一些解释,但总比花时间为他们创建我自己的UI要好:)!!IE也有这样的插件吗?@PrakharDixit对IE不太清楚,已经有一段时间没用了。但是,对于相同的用例,有一个很好的firefox工具: