Java HttpURLConnection错误网关:502错误
我有一个服务器来接收媒体jpg格式和mp4格式。交付是通过HttpURLConnection进行的。据我所知,这是使用http和https文件传输的最佳解决方案。尝试使用以下代码通过http工作:Java HttpURLConnection错误网关:502错误,java,android,file-upload,httpurlconnection,dataoutputstream,Java,Android,File Upload,Httpurlconnection,Dataoutputstream,我有一个服务器来接收媒体jpg格式和mp4格式。交付是通过HttpURLConnection进行的。据我所知,这是使用http和https文件传输的最佳解决方案。尝试使用以下代码通过http工作: FileInputStream fileInputStream = new FileInputStream(new File(sourceFileUri) ); URL url = new URL(uploadURL); connection = (HttpURLCo
FileInputStream fileInputStream = new FileInputStream(new File(sourceFileUri) );
URL url = new URL(uploadURL);
connection = (HttpURLConnection) url.openConnection();
connection.setDoInput(true);
connection.setDoOutput(true);
connection.setUseCaches(false);
connection.setRequestMethod("POST");
connection.setRequestProperty("Connection", "Keep-Alive");
connection.setRequestProperty("Content-Type", "multipart/form-data;boundary="+boundary);
outputStream = new DataOutputStream( connection.getOutputStream() );
outputStream.writeBytes(twoHyphens + boundary + lineEnd);
outputStream.writeBytes("Content-Disposition: form-data; name=\"uploadedfile\";filename=\"" + sourceFileUri +"\"" + lineEnd);
outputStream.writeBytes(lineEnd);
bytesAvailable = fileInputStream.available();
bufferSize = Math.min(bytesAvailable, maxBufferSize);
buffer = new byte[bufferSize];
bytesRead = fileInputStream.read(buffer, 0, bufferSize);
Log.d(TAG, String.valueOf(bytesRead));
while (bytesRead > 0)
{
outputStream.write(buffer, 0, bufferSize);
bytesAvailable = fileInputStream.available();
bufferSize = Math.min(bytesAvailable, maxBufferSize);
bytesRead = fileInputStream.read(buffer, 0, bufferSize);
}
outputStream.writeBytes(lineEnd);
outputStream.writeBytes(twoHyphens + boundary + twoHyphens + lineEnd);
fileInputStream.close();
outputStream.close();FileInputStream fileInputStream = new FileInputStream(new File(sourceFileUri) );
URL url = new URL(uploadURL);
connection = (HttpURLConnection) url.openConnection();
connection.setDoInput(true);
connection.setDoOutput(true);
connection.setUseCaches(false);
connection.setRequestMethod("POST");
connection.setRequestProperty("Connection", "Keep-Alive");
connection.setRequestProperty("Content-Type", "multipart/form-data;boundary="+boundary);
outputStream = new DataOutputStream( connection.getOutputStream() );
outputStream.writeBytes(twoHyphens + boundary + lineEnd);
outputStream.writeBytes("Content-Disposition: form-data; name=\"uploadedfile\";filename=\"" + sourceFileUri +"\"" + lineEnd);
outputStream.writeBytes(lineEnd);
bytesAvailable = fileInputStream.available();
bufferSize = Math.min(bytesAvailable, maxBufferSize);
buffer = new byte[bufferSize];
bytesRead = fileInputStream.read(buffer, 0, bufferSize);
Log.d(TAG, String.valueOf(bytesRead));
while (bytesRead > 0)
{
outputStream.write(buffer, 0, bufferSize);
bytesAvailable = fileInputStream.available();
bufferSize = Math.min(bytesAvailable, maxBufferSize);
bytesRead = fileInputStream.read(buffer, 0, bufferSize);
}
outputStream.writeBytes(lineEnd);
outputStream.writeBytes(twoHyphens + boundary + twoHyphens + lineEnd);
fileInputStream.close();
outputStream.close();
一旦我对传入的位流文件进行了记录,我就会得到一个服务器错误“502坏网关”。这部分代码有什么问题?我找了5个小时的问题,但什么也没找到