2016-04-25 58 views
0

我有一個ajax代碼,你可以在下面看到;如何使用HttpUrlConnection進行數據發佈?

$.ajax({ 
    url: 'http://www.whoisxmlapi.com/whoisserver/WhoisService', 
    dataType: 'jsonp', 
    type:'POST', 
    data: { 
     domainName: 'domaindomanin.com', 
     outputFormat: 'json' 
    }, 
    success: function(data) { 
    } 
}); 

首先,我該如何在android-java中執行此操作?

這是正常的json數據發佈和閱讀?如果它是我怎樣才能做到這一點與HttpUrlConnection類?我曾在HttpClient之前使用過,但現在由於我目前的sdk而被廢棄了。

+0

我建議使用抽射或改造。不要重新發明輪子。 – drulabs

+0

@drulabs可以給我一個使用輪子的提示嗎? –

+0

它是可用的,只是谷歌它。這裏是一個https://www.javacodegeeks.com/2013/06/android-http-client-get-post-download-upload-multipart-request.html – drulabs

回答

0

事情是這樣的:

InputStream executePostRequest(HttpURLConnection conn, Request request) 
{ 
     conn.setRequestMethod("POST"); 
     conn.setDoOutput(true); 

     String requestString = request.generateBody(); 
     byte[] outputInBytes = requestString.getBytes("UTF-8"); 

     OutputStream out = new BufferedOutputStream(conn.getOutputStream()); 
     out.write(outputInBytes); 
     out.flush(); 
     out.close(); 

     request.setRequestStatus(conn.getResponseCode()); 

     try { 
      return new BufferedInputStream(conn.getInputStream()); 
     } catch (IOException err) { 
      return new BufferedInputStream(conn.getErrorStream()); 
     } 
    } 
}