的Java如何从网站
目前我想如何提取jar文件这一信息通过服务器所需的信息的GetString。的Java如何从网站
当您触发此网址:
http://ipinfo.io/country
但回报率将在2变量,所以我的问题是如何提取,因为它不是一个JSON。
try {
URL obj = new URL("http://ipinfo.io/country");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("Accept-Language", "en-US,en;q=0.5");
con.setDoOutput(true);
con.setDoInput(true);
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
String joinString = "";
String decodedString;
while ((decodedString = in.readLine()) != null) {
joinString = joinString + decodedString;
}
in.close();
//-- Logging (joinString) & responseCode
this.setCountry(new JSONObject(joinString).getString(""));
} catch (IOException ex) {
Logger.getLogger(RegUserRequest.class.getName()).log(Level.SEVERE, null, ex);
}
的http://ipinfo.io/country
GET请求返回的国家代码作为文本输出。
那么,为什么不干脆做:
BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
String countryCode = in.readLine();
如果直接提供的数据和你有一个单一的数据检索,你为什么要使用JSON?
由于我们强调SOAP API,因此我们正在构建一个JSON以传递到服务器以主要用于getter/setter部分的注册目的。 – FreedomPride
我理解,但您可以以原始方式获取此数据,并在创建我们的JSON对象时使用它。 – davidxxx
因为在应用程序端解码它或?我想知道它是否启发我当前的版本:) – FreedomPride
您可以打印:
System.out.println(joinString);
如果你需要的GR串在你joinString为纯文本。
如果我想解析它,我需要通过获取字符串来设置它..对吗? – FreedomPride
他们提供了一个JSON API返回JSON和国家代码。 但也请考虑他们告诉你关于使用他们的服务/ API的内容:
我们的API的免费使用每天限制为1,000个API请求。如果您在24小时内 超过1,000个请求,我们会向您返回429个HTTP 状态码。如果您需要提出更多请求或自定义数据,请参阅我们的付费计划,这些计划均具有软限制。
目前,我们正在使用该方法..但在12月19日之后..该jar返回空的国家代码..这就是为什么我需要找到替代方案。 – FreedomPride
可以在字符串列表投放。 – user1211