我使用RestSharp库在C#中实现了Rest请求。
它与服务器端的@QueryParam一起使用。
但是当我使用bean时,我遇到了这个错误:
line 0:-1 no viable alternative at input '<EOF>'
因此,此代码可以很好地处理请求:
@POST
@Path("/test")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public BasicResult test (@QueryParam("code") String code) {
if (code != null) System.out.println("Code : "+code);
else System.out.println("Paramètres null");
return new BasicResult(0, "Requête OK test");
}
还有豆子:
@POST
@Path("/testBean")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public BasicResult testBean (TestBean testBean) {
if (testBean != null && testBean.getCode() != null) System.out.println("Code : "+testBean.getCode());
else System.out.println("Paramètres null");
return new BasicResult(0, "Requête OK testBean");
}
在C#中使用的代码在这里:
var client = new RestClient("http://url");
var request = new RestRequest("/action/testBean/", Method.POST);
request.AddHeader("Accept", "application/json");
request.AddHeader("Content-Type", "application/json");
request.AddParameter("code", "AAA", ParameterType.QueryStringWithoutEncode);
IRestResponse response = client.Execute(request);
var content = response.Content;
有关信息,带bean的代码可以与本地响应请求一起正常工作。