Note that there are some explanatory texts on larger screens.

plurals
  1. POUploading file with Java
    text
    copied!<p><strong>I'm trying to upload a file using Java (HTTP Post):</strong></p> <pre><code>HttpURLConnection conn = (HttpURLConnection) new URL(_uploadTarget).openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "multipart/form-data; boundary=" + boundary); conn.setDoOutput(true); long fileLength = fileContentLength + tail.length(); String stringData = "--" + boundary + "\r\nContent-Disposition: form-data; name=\"metadata\"\r\n\r\n" + metadata + "\r\n" + "--" + boundary + "\r\nContent-Disposition: form-data; name=\"uploadfile\"; filename=\"" + fileName + "\"\r\nContent-Type: application/octet-stream; charset=UTF-8\r\nContent-Transfer-Encoding: binary\r\n" + "Content-length: " + fileLength + "\r\n\r\n"; long requestLength = stringData.length() + fileLength; conn.setRequestProperty("Content-length", "" + requestLength); conn.setFixedLengthStreamingMode((int) requestLength); conn.connect(); DataOutputStream out = new DataOutputStream(conn.getOutputStream()); out.writeBytes(stringData); out.flush(); int progress = 0; int bytesRead = 0; byte b[] = new byte[1024]; BufferedInputStream bufin = new BufferedInputStream( new FileInputStream(_file)); while ((bytesRead = bufin.read(b)) != -1) { out.write(b, 0, bytesRead); out.flush(); progress += bytesRead; } out.writeBytes(tail); out.flush(); out.close(); BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream())); String line; StringBuilder sb = new StringBuilder(); while ((line = rd.readLine()) != null) { sb.append(line); } </code></pre> <p><strong>c# server:</strong></p> <pre><code>public void ProcessRequest(HttpContext context) { var uploadedFile = context.Request.Files[0]; // often throws exception with message: "Thread was being aborted." } </code></pre> <p>This code works - some times. Hope someone can help.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload