尽管我确实认为 Cloud Endpoints 非常漂亮,但如果我可以直接在 Java 代码的 GWT 应用程序中使用它们,而不是编写大量的 JSNI,那就太好了。这可能吗?我找不到办法。
换句话说,我不想使用 Javascript Endpoints 客户端,而是使用 GWT 中的 Java 的所有端点方法。
尽管我确实认为 Cloud Endpoints 非常漂亮,但如果我可以直接在 Java 代码的 GWT 应用程序中使用它们,而不是编写大量的 JSNI,那就太好了。这可能吗?我找不到办法。
换句话说,我不想使用 Javascript Endpoints 客户端,而是使用 GWT 中的 Java 的所有端点方法。
我认为您可以使用 Java 的内置HttpURLConnection
对象来使用简单的请求。像这样的东西:
//The URL would be the one you see when you execute the method from APIs Explorer...
String stringURL = "https://YOUR_APP_ID.appspot.com/_ah/api/API_NAME/VERSION/METHOD_PATH?param1=xxx¶m2=yyy";
URL url = new URL(stringURL);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setRequestProperty("Accept", "application/json");
BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream()));
然后你可以解析响应,例如使用谷歌的 Gson 库(但这将是另一个问题......)。
注意:我从未尝试过,但我知道它应该可以工作......如果你最终尝试它,请评论......