向服務器發送json格式的數據,並獲得返回的數據

  1. 首先要有一個發送的地址
  2. 通過URL獲取到連接
  3. 設置連接的參數
  4. 向連接發送數據
  5. 接收返回的數據
  public static void main(String[] args) throws IOException {
        //數據發送到哪裏去
        String url = "https://wxcms-bg.ihxlife.com/selfmanage/xq/vnc/call/bind";

        /* 要發送的數據格式
        {"conTno": "",
        "payCount": "",
        "operatorCode": "470006464",
        "customerCode": "1500077993",
        "telA": "13800128000",
        "telB": "13800128001"}
         */
       //發送餓json數據 格式1 map
        Map<String, String> map = new HashMap<>();
        map.put("operatorCode", "123344");
        map.put("customerCode", "123344");
        map.put("telA", "15210896450");
        map.put("telB", "15210896466");
        //發送餓json數據 格式1 對象
        Mybean mybean = new Mybean();
        mybean.setCustomerCode("123344");
        mybean.setOperatorCode("123344");
        mybean.setTelA("15210896450");
        mybean.setTelB("15210896466");
      //  String jsonString = JSONObject.toJSONString(mybean);
        String jsonString = JSONObject.toJSONString(map);
        System.out.println("jsonString===>"+jsonString);

        //開始連接了
        URL murl = new URL(url);
        //跟地址建立連接
        HttpURLConnection conn=null;
        conn= (HttpURLConnection) murl.openConnection();
        conn.setConnectTimeout(6000);
        conn.setRequestMethod("POST");
        conn.setDoOutput(true);
        conn.setDoInput(true);
        conn.setUseCaches(false);
        conn.setRequestProperty("Connection","Keep-Alive");
        conn.setRequestProperty("Charset","UTF-8");
        conn.setRequestProperty("Content-Type","application/json;charset=UTF-8");
        conn.setRequestProperty("accept","application/json");
        byte[] bytes = jsonString.getBytes();
        conn.setRequestProperty("Content-Length",String.valueOf(bytes.length));

        //發送數據
        OutputStream outwrite = conn.getOutputStream();
        outwrite.write(bytes);
        outwrite.flush();
        outwrite.close();
        //接受返回的數據
        BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
        String line;
        StringBuilder  sb = new StringBuilder();
        while ((line = reader.readLine()) != null) {
            sb.append(line);
        }
        reader.close();
        conn.disconnect();
        //輸出返回的數據
        System.out.println(sb.toString());
	    //解析返回的數據
        JSONObject jsonObject = JSON.parseObject(sb.toString());
        String o = (String) jsonObject.get("VirtualTel");
        System.out.println("VirtualTel===>"+o);
    }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章