奶头挺立呻吟高潮av全片,成人试看120秒体验区,性欧美极品v,A片高潮抽搐揉捏奶头视频

java語言

Java 發送http請求上傳文件功能案例

時間:2025-04-20 16:12:59 java語言 我要投稿
  • 相關推薦

Java 發送http請求上傳文件功能案例

  如何使用Java做一個http請求上傳文件的功能呢?下面是由百分網小編為大家整理的Java 發送http請求上傳文件功能案例,喜歡的可以收藏一下!了解更多詳情資訊,請關注應屆畢業生考試網!

  具體代碼如下所示:

  package wxapi.WxHelper;

  import java.io.BufferedReader;

  import java.io.DataInputStream;

  import java.io.DataOutputStream;

  import java.io.File;

  import java.io.FileInputStream;

  import java.io.IOException;

  import java.io.InputStreamReader;

  import java.io.OutputStream;

  import java.net.HttpURLConnection;

  import java.net.URL;

  import java.net.URLConnection;

  import java.util.Date;

  import java.util.Map;

  import java.util.Map.Entry;

  public class HttpRequestUtil {

  /**

  * 發送get請求

  *

  * @param requestUrl

  *      請求url

  * @param requestHeader

  *      請求頭

  * @param responseEncoding

  *      響應編碼

  * @return 頁面響應html

  */

  public static String sendGet(String requestUrl, Map<String, String> requestHeader, String responseEncoding) {

  String result = "";

  BufferedReader reader = null;

  try {

  if (requestUrl == null || requestUrl.isEmpty()) {

  return result;

  }

  URL realUrl = new URL(requestUrl);

  URLConnection connection = realUrl.openConnection();

  connection.setRequestProperty("accept", "text/html, application/xhtml+xml, image/jxr, */*");

  connection.setRequestProperty("user-agent", "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:53.0) Gecko/20100101 Firefox/53.0");

  if (requestHeader != null && requestHeader.size() > 0) {

  for (Entry<String, String> entry : requestHeader.entrySet()) {

  connection.setRequestProperty(entry.getKey(), entry.getValue());

  }

  }

  connection.connect();

  if (responseEncoding == null || responseEncoding.isEmpty()) {

  responseEncoding = "UTF-8";

  }

  reader = new BufferedReader(new InputStreamReader(connection.getInputStream(), responseEncoding));

  String line;

  while ((line = reader.readLine()) != null) {

  result += line;

  }

  } catch (Exception e) {

  System.out.println("發送GET請求出現異常!");

  e.printStackTrace();

  } finally {

  try {

  if (reader != null) {

  reader.close();

  }

  } catch (Exception e) {

  e.printStackTrace();

  }

  }

  return result;

  }

  /**

  * 發送post請求

  *

  * @param requestUrl

  *      請求url

  * @param requestHeader

  *      請求頭

  * @param formTexts

  *      表單數據

  * @param files

  *      上傳文件

  * @param requestEncoding

  *      請求編碼

  * @param responseEncoding

  *      響應編碼

  * @return 頁面響應html

  */

  public static String sendPost(String requestUrl, Map<String, String> requestHeader, Map<String, String> formTexts, Map<String, String> files, String requestEncoding, String responseEncoding) {

  OutputStream out = null;

  BufferedReader reader = null;

  String result = "";

  try {

  if (requestUrl == null || requestUrl.isEmpty()) {

  return result;

  }

  URL realUrl = new URL(requestUrl);

  HttpURLConnection connection = (HttpURLConnection) realUrl.openConnection();

  connection.setRequestProperty("accept", "text/html, application/xhtml+xml, image/jxr, */*");

  connection.setRequestProperty("user-agent", "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:53.0) Gecko/20100101 Firefox/53.0");

  if (requestHeader != null && requestHeader.size() > 0) {

  for (Entry<String, String> entry : requestHeader.entrySet()) {

  connection.setRequestProperty(entry.getKey(), entry.getValue());

  }

  }

  connection.setDoOutput(true);

  connection.setDoInput(true);

  connection.setRequestMethod("POST");

  if (requestEncoding == null || requestEncoding.isEmpty()) {

  requestEncoding = "UTF-8";

  }

  if (responseEncoding == null || responseEncoding.isEmpty()) {

  responseEncoding = "UTF-8";

  }

  if (requestHeader != null && requestHeader.size() > 0) {

  for (Entry<String, String> entry : requestHeader.entrySet()) {

  connection.setRequestProperty(entry.getKey(), entry.getValue());

  }

  }

  if (files == null || files.size() == 0) {

  connection.setRequestProperty("content-type", "application/x-www-form-urlencoded");

  out = new DataOutputStream(connection.getOutputStream());

  if (formTexts != null && formTexts.size() > 0) {

  String formData = "";

  for (Entry<String, String> entry : formTexts.entrySet()) {

  formData += entry.getKey() + "=" + entry.getValue() + "&";

  }

  formData = formData.substring(0, formData.length() - 1);

  out.write(formData.toString().getBytes(requestEncoding));

  }

  } else {

  String boundary = "-----------------------------" + String.valueOf(new Date().getTime());

  connection.setRequestProperty("content-type", "multipart/form-data; boundary=" + boundary);

  out = new DataOutputStream(connection.getOutputStream());

  if (formTexts != null && formTexts.size() > 0) {

  StringBuilder sbFormData = new StringBuilder();

  for (Entry<String, String> entry : formTexts.entrySet()) {

  sbFormData.append("--" + boundary + "\r\n");

  sbFormData.append("Content-Disposition: form-data; name=\"" + entry.getKey() + "\"\r\n\r\n");

  sbFormData.append(entry.getValue() + "\r\n");

  }

  out.write(sbFormData.toString().getBytes(requestEncoding));

  }

  for (Entry<String, String> entry : files.entrySet()) {

  String fileName = entry.getKey();

  String filePath = entry.getValue();

  if (fileName == null || fileName.isEmpty() || filePath == null || filePath.isEmpty()) {

  continue;

  }

  File file = new File(filePath);

  if (!file.exists()) {

  continue;

  }

  out.write(("--" + boundary + "\r\n").getBytes(requestEncoding));

  out.write(("Content-Disposition: form-data; name=\"" + fileName + "\"; filename=\"" + file.getName() + "\"\r\n").getBytes(requestEncoding));

  out.write(("Content-Type: application/x-msdownload\r\n\r\n").getBytes(requestEncoding));

  DataInputStream in = new DataInputStream(new FileInputStream(file));

  int bytes = 0;

  byte[] bufferOut = new byte[1024];

  while ((bytes = in.read(bufferOut)) != -1) {

  out.write(bufferOut, 0, bytes);

  }

  in.close();

  out.write(("\r\n").getBytes(requestEncoding));

  }

  out.write(("--" + boundary + "--").getBytes(requestEncoding));

  }

  out.flush();

  out.close();

  out = null;

  reader = new BufferedReader(new InputStreamReader(connection.getInputStream(), responseEncoding));

  String line;

  while ((line = reader.readLine()) != null) {

  result += line;

  }

  } catch (Exception e) {

  System.out.println("發送POST請求出現異常!");

  e.printStackTrace();

  } finally {

  try {

  if (out != null) {

  out.close();

  }

  if (reader != null) {

  reader.close();

  }

  } catch (IOException ex) {

  ex.printStackTrace();

  }

  }

  return result;

  }

  }

【Java 發送http請求上傳文件功能案例】相關文章:

java如何利用java.net.URLConnection發送HTTP請求08-05

JAVA如何獲取HTTP請求頭10-22

關于java實現http請求工具類示例09-09

php實現文件上傳及頭像預覽功能10-17

java上傳文件到七牛云中09-23

PHP實現文件上傳和多文件上傳07-31

JavaWeb如何實現文件上傳下載功能08-23

Html5如何實現文件異步上傳功能09-16

php文件怎么上傳06-21

主站蜘蛛池模板: 乐昌市| 上蔡县| 沭阳县| 兴山县| 临江市| 息烽县| 竹北市| 邵阳县| 阳江市| 临洮县| 通化县| 松原市| 抚松县| 南和县| 北宁市| 丰县| 玉溪市| 司法| 友谊县| 玉山县| 英山县| 文昌市| 金堂县| 榆林市| 呼图壁县| 宣武区| 元谋县| 洛隆县| 兴仁县| 富宁县| 堆龙德庆县| 黔南| 邢台市| 阿克苏市| 鲜城| 漾濞| 贡嘎县| 高雄县| 诸城市| 繁昌县| 秭归县|