Java 如何在cURL命令中执行POST以上载文件
我通过web使用RestFul服务器上传一个文件,并将我选择的字段复制到一个文件夹中,但当我试图通过命令cUrl not run使用相同的方法时,我认为可能是语法问题,或者我如何将参数传递给该方法 方法如下:Java 如何在cURL命令中执行POST以上载文件,java,web-services,rest,unix,curl,Java,Web Services,Rest,Unix,Curl,我通过web使用RestFul服务器上传一个文件,并将我选择的字段复制到一个文件夹中,但当我试图通过命令cUrl not run使用相同的方法时,我认为可能是语法问题,或者我如何将参数传递给该方法 方法如下: @POST @Consumes(MediaType.MULTIPART_FORM_DATA) public Response uploadFile( @FormDataParam("file") InputStream uploadedInputStream,
@POST
@Consumes(MediaType.MULTIPART_FORM_DATA)
public Response uploadFile(
@FormDataParam("file") InputStream uploadedInputStream,
@FormDataParam("file") FormDataContentDisposition fileDetail) {
logger.debug(message);
String uploadedFileLocation = C_HOME_TEST + fileDetail.getFileName();
// save it
writeToFile(uploadedInputStream, uploadedFileLocation);
String output = "File " + fileDetail.getFileName() + " uploaded to : " + uploadedFileLocation;
saveInFile(fileDetail.getFileName());
return Response.status(200).entity(output).build();
}
这是命令:
curl --form "fileupload=@filename.png" http://localhost:8080/RESTfulExample/rest/file
如果我让这个类的GET连接起来没有任何问题。这个命令是错误的
curl -X POST -F 'file=@apple.png' http://localhost:8080/RESTfulExample/rest/file
命令:
curl -H 'Content-Type: multipart/form-data' -v -F 'file=@/path/to/theFile' http://localhost:35681/api
参数说明:
-H-头将自定义头传递给服务器
-v-冗长使操作更具说服力
-F-form指定多部分MIME数据
有关更多详细信息,您可以通过终端上的curl-help查看curl文档。任何人都可以查看curl-help所有选项,但我将介绍所有操作