草庐IT

REST_Controller

全部标签

java - 版本控制 REST API 和供应商特定的内容类型

我阅读了很多关于版本控制RESTAPI的文章,例如在这个线程中:BestpracticesforAPIversioning?因此,我想使用HTTP-Accept-Header来指示客户端要求的版本。但是我怎样才能在我的应用程序中应用它呢?因此做出了哪些改变?编码器如何知道应该使用哪个版本?我必须注册我的类型吗?我所知道的是我必须更改@Produces-Annotation的内容@GET@Path("/locations")@Produces("application/vnd.mycompany-v1+xml")Location[]getLocations();但是还有什么需要改变的呢?

java - 获取 JSON 响应作为 Java 中 Rest 调用的一部分

我正在尝试用Java调用Rest服务。我是网络和休息服务的新手。我有Rest服务,它返回JSON作为响应。我有以下代码,但我认为它不完整,因为我不知道如何使用JSON处理输出。publicstaticvoidmain(String[]args){try{URLurl=newURL("http://example.com:7000/test/db-api/processor");HttpURLConnectionconnection=(HttpURLConnection)url.openConnection();connection.setDoOutput(true);connectio

java - 为什么没有为 Jersey Controller 检测到我的方面(使用自定义注释)?

我想在JerseyController上创建一个方面来测量执行服务需要多长时间。我正在反对我的切入点,因为它未被检测到并且我的方面从未启动。我尝试过使用很多切入点,例如:execution(@Monitor**.*(..))execution(public**(..))changetheorderof@Aspectand@ComponentAddedapointcutlikethis:@Pointcut("execution(@Monitor**.*(..))")publicvoidmonitorRequestTargets(){}@Around("monitorRequestTarg

java - REST-API 错误响应的不同内容类型

几周以来,我一直在使用spring-mvc开发restapi。REST-API工作正常,我几乎完成了最后一个关于特定错误对象错误处理的问题。REST-API使用JSON作为格式来序列化Java对象。当服务执行期间发生错误时,将创建一个特定的错误对象并将其发送回客户端。当我的休息服务被标记为“produces=application/json”时,一切正常。但也有一些服务只需要使用“produces=text/plain”返回简单的文本。当这些服务之一发生错误时,Spring-MVC将抛出HttpMediaTypeNotAcceptableException。似乎是正确的,因为客户端要求

java - 使用 REST-assured 验证响应 header 中的整数值

可能是由于我对rest-assured和hamcrest匹配器缺乏经验,我还没有弄清楚如何正确地执行此断言when().get(url).then().header("my-header",lessThanOrEqualTo("60"));//shouldcompareIntegersnotStrings一个明显的解决方案是从header中提取值,将其转换为Integer,然后手动执行断言。但是,这会有点破坏放心工作的美好。有没有一种方法可以在不使测试膨胀的情况下进行正确的比较? 最佳答案 从RESTAssured2.6.0开始,您

java - 测试 Camel REST DSL 消费者模板

我有以下代码:importorg.apache.camel.builder.RouteBuilder;importorg.apache.camel.model.rest.RestBindingMode;publicclassOrderNumberRouteBuilderextendsRouteBuilder{@Overridepublicvoidconfigure()throwsException{restConfiguration().component("servlet").bindingMode(RestBindingMode.json).dataFormatProperty("

java - 使用映射为使用 RestTemplate 的 rest 调用设置参数

我目前正在使用一段代码来设置参数,我使用restTemplate对URL进行REST调用,它工作正常:MultiValueMapmap=newLinkedMultiValueMap();map.add("grant_type",grantType);map.add("client_id",clientId);map.add("client_secret",clientSecret);HttpEntityentity=newHttpEntity(map);restTemplate.exchange("myurl",HttpMethod.POST,entity,Void.class);但是

java - 导入模块中的 Spring Boot 和 Controller

我有一个Springboot应用程序,我想导入一个用springboot编写的定义了一些Controller的依赖项。也许这很简单,但是我怎样才能让主应用程序能够初始化导入模块中的所有这些Controller呢?当我尝试访问这些Controller的路径时,我收到一条错误消息,指出缺少给定路径的处理程序方法。我试过如下:@SpringBootApplication@ComponentScan(basePackages={"com.main.project","com.imported.dependency"})publicclassMyApplicationimplementsComm

java - Spring Rest Web 服务将文件作为资源返回

我正在尝试从部署在服务器上的RestWeb服务返回一个文件流,并从客户端上的RestWeb服务处理这个流。在服务器上我使用这段代码:@Override@RequestMapping(value="/file",method=RequestMethod.GET,produces=MediaType.APPLICATION_OCTET_STREAM_VALUE)public@ResponseBodyResourcegetAcquisition(@RequestParam(value="filePath",required=true)StringfilePath)throwsFileNotF

java - Spring MVC 忽略给定 Controller 方法的 Json 属性

我有一个Java类(MyResponse),它由多个RestController方法返回并且有很多字段。@RequestMapping(value="offering",method=RequestMethod.POST)publicResponseEntitypostOffering(...){}@RequestMapping(value="someOtherMethod",method=RequestMethod.POST)publicResponseEntitysomeOtherMethod(...){}我只想忽略(例如,不序列化它)一种方法的其中一个属性。我不想忽略该类的空字段