Java 如何处理服务器端的HttpUrlConnection?
我正在尝试通过HttpUrlConnection方法发送文件Java 如何处理服务器端的HttpUrlConnection?,java,file,http,httpurlconnection,dataoutputstream,Java,File,Http,Httpurlconnection,Dataoutputstream,我正在尝试通过HttpUrlConnection方法发送文件 URL url = new URL(SERVER_URL); connection = (HttpURLConnection) url.openConnection(); connection.setDoInput(true);//Allow Inputs connection.setDoOutput(true);//Allow Ou
URL url = new URL(SERVER_URL);
connection = (HttpURLConnection) url.openConnection();
connection.setDoInput(true);//Allow Inputs
connection.setDoOutput(true);//Allow Outputs
connection.setUseCaches(false);//Don't use a cached Copy
connection.setRequestMethod("POST");
connection.setRequestProperty("Connection", "Keep-Alive");
connection.setRequestProperty("ENCTYPE", "multipart/form-data");
connection.setRequestProperty("Content-Type", "multipart/form-data;boundary=" + boundary);
connection.setRequestProperty("uploaded_file",selectedFilePath);
正在使用dataOutputStream发送文件。 dataOutputStream.writeBytes(lineEnd);
dataOutputStream.writeBytes(twoHyphens + boundary + twoHyphens + lineEnd);
但不确定如何在服务器端处理此HttlUrlConnection和fileoutputstream
我不确定我做的是否正确,但尝试使用
简单的请求映射。这是我的服务器端 @RequestMapping(value="/fileUploadPage")
public String fileUpload(@Validated FileModel file, BindingResult result, ModelMap model,HttpServletRequest req) throws IOException {
How to handle 'httpUrlconnection outputstream' in here?
}
问题中的代码片段显示您正在使用spring。Spring支持多部分文件上传,请检查。配置
多部件解析器
后,可以执行以下操作:
@PostMapping("/form")
public String handleFormUpload(@RequestParam("name") String name,
@RequestParam("file") MultipartFile file) {
if (!file.isEmpty()) {
byte[] bytes = file.getBytes();
// store the bytes somewhere
return "redirect:uploadSuccess";
}
return "redirect:uploadFailure";
}
没有
ENCTYPE
标题。您使用什么语言开发服务器端??在php中,您可以使用$\u文件访问多部分数据。是否可以在客户端使用@Requestmapping?处理文件outputstream。我正在使用DataOutputStream。服务器是否不必使用inputstream?Spring可以为您这样做,并为您提供一个随时可用的多部分文件
,这样您就不必处理较低级别的详细信息。我正在从本机Android发送DataoutputStream。我是否应该使用android中的dataoutputStream发送图像或文件,对吗?服务器不关心也不知道输入的字节是用android、Visual Basic还是Haskell发送的-它们看起来都一样。它不会用@RequestParam(“文件”)多部分文件响应。请求映射仅在我放入@validatedfilemodel文件时响应