首先,感谢您阅读我的问题,并尝试帮助我并为我的英语道歉。
我是Spring的新手,并且收到以下消息:
对URI的servlet请求
class Program
{
static void Main(string[] args)
{
MyClass object1 = new MyClass(1, "A", new DateTime(2019, 1, 1));
MyClass object2 = new MyClass(2, "B", new DateTime(2019, 1, 2));
List<MyClass> myList = new List<MyClass>();
myList.Add(object1);
myList.Add(object2);
string json = JsonConvert.SerializeObject(myList);
List<MyClass> objectAfterJson = JsonConvert.DeserializeObject<List<MyClass>>(json);
int id = objectAfterJson[0].Id;
}
}
class MyClass
{
public int Id;
public string Name;
public DateTime Date;
public MyClass(int id, string name, DateTime date)
{
Id = id;
Name = name;
Date = date;
}
}
在请求主体中包含表单参数,但是请求主体已被servlet或访问请求参数的servlet过滤器消耗。只有使用http://localhost:8080/backend/v1/streetviewer/search-street?url=backend2?busqueda=name%20street&idioma=es-es%26cantidad=10
的资源方法才能按预期工作。通过其他方式消耗请求主体的资源方法将无法正常工作。
我的后端使用一个参数(网址)向backend2发送请求,但该网址包含3个参数。我知道这就是为什么要这么说。
但是我读到@FormParam
用于POST请求,而我正在使用@FormParam
。
@QueryParam
如何解决?
答案 0 :(得分:1)
可以说,您实际上是在使用JAX-RS
中的backend2
实现,我假设它是一项单独的服务,所以建议您使用Spring Implementations来使用该API。 @RequestMapping/@GetMapping and so..
出现问题(使用Spring实施)
@GetMapping(ApiPath.PATH_BACKEND2)
public String getDataFromProdServer(@RequestParam(ApiParam.PARAM_UR) final String externalUrl) {
return mapService.serverRequest(externalUrl);
}