Java/Play 中的 JSON 代理!框架

Posted

技术标签:

【中文标题】Java/Play 中的 JSON 代理!框架【英文标题】:JSON Proxy in Java / Play! Framework 【发布时间】:2012-01-01 06:18:43 【问题描述】:

我有戏!应用程序和我们现在遇到的 javascript 同源策略问题。

我想要的是 JavaScript ajax 调用转到我们自己的服务器,并且该服务器再次将 json 调用路由到外部 REST API。

我的 JavaScript 对这个 url 使用 ajax:

$.getJSON("http://mydomain.com/users", function(users) 
    //callback          
);

我怎样才能轻松地让服务器路由到让我们说:

public void getUsers()
     // result = call www.otherdomain.org/api/users.json   What to do here?
     renderJson(result);

然后返回响应?

或者可以通过直接重新路由在某处动态完成吗?

【问题讨论】:

【参考方案1】:

这里有一个进行异步 http 调用的示例(例如到 facebook api)

WSRequest req = WS.url("https://graph.facebook.com/100001789213579");
Promise<HttpResponse> respAsync = req.getAsync();
HttpResponse resp = await(respAsync);

JsonElement jsonResp = resp.getJson();
JsonObject jsonObj = new JsonObject();
jsonObj.add("facebook-response", jsonResp);

renderJSON(jsonObj);

【讨论】:

【参考方案2】:

您可以使用WS class 调用另一个 URL 作为 Web 服务并检索答案。

见an example here

【讨论】:

看起来很有希望,我会测试一下!

以上是关于Java/Play 中的 JSON 代理!框架的主要内容,如果未能解决你的问题,请参考以下文章

使用 java play 框架集成 Express Checkout 的问题

无法在网格视图中显示存储中的 Json 数据(使用 Sencha 框架)

Java Play 中的配置 - ebean 和 postgresql

Java Play 框架 - NoClassDefFoundError:播放/配置

前端 package.json 中的代理配置如何实现 void cors 请求?

Spring框架中的JDK与CGLib动态代理