2012-07-17 183 views
0

我一直在研究如何通过json发送和接收信息到一个url,最近3天。我发现了很多关于如何去做的文档和代码示例,但我无法理解他们在说什么。我输入了天知道有多少.jar文件放入我的eclipse包中。有没有人有一个很好的例子,如何连接到一个URL,发送/接收信息(甚至登录),解析它,并发送更多的信息?我明白我要求很多。我不需要所有的答案,好的文档和一些好的例子会让我很高兴。JAVA通过json发送/接收信息

+1

SO不是样品库)尝试使用Google等[此](https://www.google.com/#hl=en&sclient=psy-ab&q=json+java+example&oq=json+java例如+&gs_l = hp.3..0j0i30l3.1588.4478.0.4618.17.13.0.4.4.0.236.2033.0j11j2.13.0 ... 0.0 ... 1c.V4w7MapD_C4&PBX = 1&BAV = on.2,or.r_gc.r_pw.r_cp。 r_qf。,cf.osb&fp = 45f67fe1507830ba&biw = 1366&bih = 614) – 2012-07-17 17:37:12

+0

www.hackerrank.com – 2012-07-17 17:44:06

+0

即时建立一个机器人,我已经建立了胆量,即时通讯只是试图发送和接收来自该网站...和即时通讯砸我的头墙壁... – 2012-07-17 17:44:50

回答

3
+0

里克,感谢您的帮助。在这一点上我不认为我能理解它。这对我来说都很像希腊人。谢谢你的帮助。 Google GSON图书馆的 – 2012-07-17 18:25:01

+0

+1;我已经在很多项目中使用它来简化使用JSON的工作。 – 2012-07-17 18:42:32

+1

@TraeMoore - 如果这些库中的例子看起来像希腊语,那么我会建议在尝试像描述的那样执行一个更大的项目之前,尝试更加精通Java。你有没有尝试制作一个Hello World应用程序?你有对面向对象编程语言的理解吗?等等... – 2012-07-17 18:44:27

0

发现了一个非常坚实的例子在这里在这个博客上http://www.gnovus.com/blog/programming/making-http-post-request-json-using-apaches-httpclient

下面粘贴如果由于某种原因,链接不起作用。

public class SimpleHTTPPOSTRequester { 

private String apiusername; 
private String apipassword; 
private String apiURL; 

public SimpleHTTPPOSTRequester(String apiusername, String apipassword, String apiURL) {   
    this.apiURL = apiURL; 
    this.apiusername = apiusername; 
    this.apipassword = apipassword; 
} 

public void makeHTTPPOSTRequest() { 
    try { 
     HttpClient c = new DefaultHttpClient();   
     HttpPost p = new HttpPost(this.apiURL);   

     p.setEntity(new StringEntity("{\"username\":\"" + this.apiusername + "\",\"password\":\"" + this.apipassword + "\"}", 
         ContentType.create("application/json"))); 

     HttpResponse r = c.execute(p); 

     BufferedReader rd = new BufferedReader(new InputStreamReader(r.getEntity().getContent())); 
     String line = ""; 
     while ((line = rd.readLine()) != null) { 
      //Parse our JSON response    
      JSONParser j = new JSONParser(); 
      JSONObject o = (JSONObject)j.parse(line); 
      Map response = (Map)o.get("response"); 

      System.out.println(response.get("somevalue")); 
     } 
    } 
    catch(ParseException e) { 
     System.out.println(e); 
    } 
    catch(IOException e) { 
     System.out.println(e); 
    }       
}  
}