从内容配置中提取文件名
extract file name from content disposition
我的负载有 Content-Disposition 字段。我正在尝试上传一个 bpmn 文件。所以在后端我需要解析输入流并提取这个文件名。但我无法找到解决方案。我正在使用 jesrey 休息。
我试过:
@POST
@Consumes(MediaType.MULTIPART_FORM_DATA)
@Produces(MediaType.APPLICATION_JSON)
public Response addWorkflowSchema(@FormDataParam("bpmndata") InputStream uploadedInputStream,
String filename,
@Context HttpServletRequest request)
获取整个负载数据。但只有当我删除 FormDataParam 时,我才能获取请求正文。
请求有效负载:
------WebKitFormBoundary8CCb878TyZksE9go
Content-Disposition: form-data; name="bpmndata"; filename="process.bpmn"
Content-Type: application/octet-stream
------WebKitFormBoundary8CCb878TyZksE9go--
我需要从 Content-Disposition 获取文件名。我怎样才能得到这个。
只需注入 FormDataContentDisposition
,然后从 that 获取文件名。
public Response addWorkflowSchema(
@FormDataParam("bpmndata") InputStream in,
@FormDataParam("bpmndata") FormDataContentDisposition fdc) {
String fileName = fdc.getFileName();
}
InputStream
只会是文件部分的内容。它不包含 headers,因此您无需从中提取任何内容。
我的负载有 Content-Disposition 字段。我正在尝试上传一个 bpmn 文件。所以在后端我需要解析输入流并提取这个文件名。但我无法找到解决方案。我正在使用 jesrey 休息。
我试过:
@POST
@Consumes(MediaType.MULTIPART_FORM_DATA)
@Produces(MediaType.APPLICATION_JSON)
public Response addWorkflowSchema(@FormDataParam("bpmndata") InputStream uploadedInputStream,
String filename,
@Context HttpServletRequest request)
获取整个负载数据。但只有当我删除 FormDataParam 时,我才能获取请求正文。
请求有效负载:
------WebKitFormBoundary8CCb878TyZksE9go
Content-Disposition: form-data; name="bpmndata"; filename="process.bpmn"
Content-Type: application/octet-stream
------WebKitFormBoundary8CCb878TyZksE9go--
我需要从 Content-Disposition 获取文件名。我怎样才能得到这个。
只需注入 FormDataContentDisposition
,然后从 that 获取文件名。
public Response addWorkflowSchema(
@FormDataParam("bpmndata") InputStream in,
@FormDataParam("bpmndata") FormDataContentDisposition fdc) {
String fileName = fdc.getFileName();
}
InputStream
只会是文件部分的内容。它不包含 headers,因此您无需从中提取任何内容。