HttpKit增長getBytes方法

HttpKit的get方法只返回String,沒有返回Bytes的方法,有些場景沒法使用,如今增長相關方法,但願下個版本能加入。java

直接貼源代碼:
ui

public static byte[] getBytes(String url, Map<String, String> queryParas, Map<String, String> headers) {
		HttpURLConnection conn = null;
		try {
			conn = getHttpConnection(buildUrlWithQueryString(url, queryParas), GET, headers);
			conn.connect();
			return readResponseByte(conn);
		} catch (Exception e) {
			throw new RuntimeException(e);
		} finally {
			if (conn != null) {
				conn.disconnect();
			}
		}
	}

	public static byte[] getBytes(String url, Map<String, String> queryParas) {
		return getBytes(url, queryParas, null);
	}

	public static byte[] getBytes(String url) {
		return getBytes(url, null, null);
	}
	
	private static byte[] readResponseByte(HttpURLConnection conn) {
		InputStream inputStream = null;
		ByteArrayOutputStream outStream = null;
		try {
			inputStream = conn.getInputStream();
			outStream = new ByteArrayOutputStream();
			byte[] buffer = new byte[1024];
			int len = 0;
			while ((len = inputStream.read(buffer)) != -1) {
				outStream.write(buffer, 0, len);
				outStream.flush();
			}
			return outStream.toByteArray();
		} catch (Exception e) {
			throw new RuntimeException(e);
		} finally {
			if (inputStream != null) {
				try {
					inputStream.close();
				} catch (IOException e) {
					e.printStackTrace();
				}
			}
			if (outStream != null) {
				try {
					outStream.close();
				} catch (IOException e) {
					e.printStackTrace();
				}
			}
		}
	}
相關文章
相關標籤/搜索