Angularjs 使用jax rs重定向get请求并返回响应以解决CORS问题?
我需要使用来自angularjs应用程序的ajax请求从webservice检索一些数据。我不能直接做,因为,例如,你可以看到这个问题 据我所知,我唯一的解决方案是从我的服务器向第三方服务器执行请求,然后从我的服务器返回给我的客户端,如下方案所示:Angularjs 使用jax rs重定向get请求并返回响应以解决CORS问题?,angularjs,rest,servlets,jax-rs,apache-httpclient-4.x,Angularjs,Rest,Servlets,Jax Rs,Apache Httpclient 4.x,我需要使用来自angularjs应用程序的ajax请求从webservice检索一些数据。我不能直接做,因为,例如,你可以看到这个问题 据我所知,我唯一的解决方案是从我的服务器向第三方服务器执行请求,然后从我的服务器返回给我的客户端,如下方案所示: 客户端->我的服务器->第三方服务器->我的服务器->客户端 直截了当的解决方案是使用JAX-RS在我的客户机和服务器之间进行通信,使用库在我的服务器和第三方服务器之间进行通信,但我怀疑是否存在仅基于JAX-RS为我提供的工具的解决方案?好的,我使用
客户端->我的服务器->第三方服务器->我的服务器->客户端
直截了当的解决方案是使用JAX-RS在我的客户机和服务器之间进行通信,使用库在我的服务器和第三方服务器之间进行通信,但我怀疑是否存在仅基于JAX-RS为我提供的工具的解决方案?好的,我使用的是JAX-RS 2.0,它有自己的客户机,所以很简单:
@GET
public Response getRedirectedRequest(@QueryParam("query") String query){
Client client = ClientBuilder.newClient();
WebTarget target = client.target("http://example.com")
.path("/path/api/")
.queryParam("q", query);
Response response = target.request()
.accept("application/json; charset=utf-8")
.get();
String json = response.readEntity(String.class);
response.close();
return Response.ok(json).build();
}