让我说,它不可能得到解决。我用java不是代码只适用于HTTP请求尝试(我这里使用的是graph.facebook.com):
public class search {
private static String readAll(Reader rd) throws IOException {
StringBuilder sb = new StringBuilder();
int cp;
while ((cp = rd.read()) != -1) {
sb.append((char) cp);
}
return sb.toString();
}
public static JSONObject readJsonFromUrl(String url) throws IOException, JSONException {
InputStream is = new URL(url).openStream();
try {
BufferedReader rd = new BufferedReader(new InputStreamReader(is, Charset.forName("UTF-8")));
String jsonText = readAll(rd);
JSONObject json = new JSONObject(jsonText);
return json;
} finally {
is.close();
}
}
public static void main(String[] args) throws Exception{
// TODO Auto-generated method stub
System.getProperties().put("http.proxyHost", "172.16.0.2");
System.getProperties().put("http.proxyPort", "8080");
JSONObject json = readJsonFromUrl("http://maps.googleapis.com/maps/api/place/nearbysearch/json?key=AIzaSyBRlMLIdoTk-j4OZCucR47rVMLhMmvZVRw&type=hospital&location=12.8213125%2C80.0442&radius=500&_=1427359809583");
System.out.println(json.toString());
// System.out.println(json.get("about"));
// System.out.println("hello ");
}
}
如果更换链接与地方api网络搜索它将无法正常工作,原因是谷歌不提供其服务的HTTP域,,,我的代码只适用于HTTP域(不是HTTPS)
就我所知,客户端可以如果目标服务器允许通过将Access-Control-Allow头添加到响应来发出跨站点ajax请求,如[这里]所述(http://www.nczonline.net/blog/2010/05/25/cross-域的Ajax-WI因此,问题是如果可以为特定域启用自动完成API WebService,那么问题是真的。这将涉及(在谷歌方面)匹配请求中的API密钥和允许的引用者列表。 – 2012-03-05 13:42:25
'访问控制,Allow'只适用于“现代”浏览器(IE6和7不会允许) – MMM 2012-03-05 15:46:24
这没关系,因为我们不支持IE6和7反正:) – 2012-03-06 07:13:35