当前位置: 首页 > 知识库问答 >
问题:

方法的主体参数太多

桑思远
2023-03-14

我在RestController类中有以下requestMethod,它运行良好:

@RequestMapping(path = "/api/v1/rest/websearcher/search/results", method = RequestMethod.POST,
            produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
    public ResponseEntity<WebResultResponse> getSavedAvailability(@RequestBody final WebResultRequest navigationRequest, 
    @CookieValue(value = "forceSupplier", defaultValue = "") final String forceSupplier)

我还有一个假客户也工作得很好。我在两种方法中都添加了一个名为forceSupplier的新参数,但添加后,我发现方法的主体参数太多了,但我真的不明白为什么我会收到此消息,因为参数是相同的。

这是假装的方法:

@RequestMapping(path = "/api/v1/rest/websearcher/search/results", method = RequestMethod.POST,
        produces = MediaType.APPLICATION_JSON_VALUE + ";charset=UTF-8")
ResponseEntity<WebResultResponse> getAndSavedAvailability(@RequestBody WebResultRequest webSearcherResultRequest, @CookieValue(value = "forceSupplier", defaultValue = "") String forceSupplier);

我做错了什么?谢谢

共有1个答案

公孙芷阳
2023-03-14

使用Spring Cloud OpenFeign时不支持注释@CookieValue。因此,Faign将您的@RequestBody@CookieValue参数视为请求实体,并且由于您只有一个请求实体,因此Faign会抛出您看到的异常。

目前还不支持在Faign中使用cookie。

 类似资料:
  • 我创建了模拟客户端来调用我的RestApi。当我尝试运行我的服务,我收到错误从这个请求方法对于@请求身体我只使用对象类型,因为每次我可以发送另一个身体请求。

  • 下面的示例演示了使用OpenFeign时遇到的问题。当响应对象的字段太多时,问题就会变得明显,这会引发一个错误:方法的参数太多。示例1工作正常,但示例2失败。 示例1使用HTTP. POST与示例2中使用的响应对象相同,后者使用HTTP. GET。 为什么在HTTP. GET方法中OpenFaigns限制字段,并抛出异常?我不能使用HTTP. POST获取/获取/读取资源。糟糕的REST API设

  • 我有一个简单的POJO: 和一个简单的假冒客户端: 根据拉动请求#667,我期望这被翻译为: 但我得到的是: 请注意,参数在请求主体中传递,而不是作为传递。 它试图调用的endpoint定义为: 我错过了什么?如何使用将其作为查询参数传递?

  • 我正在尝试编写一个服务,它将通过eureka服务器绑定到另一个服务,我想使用FaignClient Hystrix,我无法实现GET控制器,我遇到了以下异常: 这是我的控制器在主服务中的外观: 这就是我的控制器在服务中的样子,在那里我试图实现飞扬客户端: 这是我制作FaignClient的界面 这是FaignClient的后备类: CarFilter: 请帮帮我,我已经被这个任务折磨了很长时间了。

  • 问题内容: 我刚刚开始用Java编写程序。以下Java代码是什么意思? What is String[] args? When would you use these args? 源代码和/或示例优先于抽象解释 问题答案: 在Java中,包含提供的命令行参数作为对象数组。 换句话说,如果你运行你的程序作为然后将包含。 如果要输出的内容,可以像这样遍历它们…

  • 我找不到任何一个简单直接的资源来解释下面的BASH shell错误的含义和修复方法,所以我将发布我在研究后发现的内容。 错误: 谷歌友好版: