使用 jQuery 上传文件插件时出错,将不需要的字符串附加到文件 (WebKitFormBoundary)
Posted
技术标签:
【中文标题】使用 jQuery 上传文件插件时出错,将不需要的字符串附加到文件 (WebKitFormBoundary)【英文标题】:Error using jQuery Upload File Plugin, unwanted strings appended to files (WebKitFormBoundary) 【发布时间】:2014-07-04 17:56:42 【问题描述】:我正在使用这个插件:http://hayageek.com/docs/jquery-upload-file.php
我用它将文件发送到 WCF Rest 服务并将其保存在硬盘上。
上传工作正常,但问题是图像、exe 等。上传损坏。 如果我用文本编辑器打开上传的文件,我会看到不需要的字符串
开始:
------WebKitFormBoundaryPUTfurckDMbpBxiw Content-Disposition: form-data;名称=“文件”; filename="image.png" 内容类型:image/png
结束:
------WebKitFormBoundaryPUTfurckDMbpBxiw--
我的服务代码:
<OperationContract()>
<WebInvoke(ResponseFormat:=WebMessageFormat.Json, Method:="POST", UriTemplate:="GetFile?fileName=fileName&accion=accion")>
Function GetFile(str As Stream, fileName As String, accion As String) As String
Try
Dim absFileName As String = "C:\inetpub\wwwroot\UploadedComponents\" & fileName
Using fs As New FileStream(absFileName, FileMode.Create)
str.CopyTo(fs)
str.Close()
End Using
Return "Upload OK"
Catch ex As Exception
Throw ex
End Try
End Function
有什么办法解决这个问题吗?
【问题讨论】:
【参考方案1】:终于在这里找到了答案:
Reading file input from a multipart/form-data POST
我需要从Multipart Parser这里导入一个组件。
然后将上传的文件保存在服务端:
public void Upload(Stream stream)
string filepath = "some path with filename and extension"; // corrected filepath mistyping
MultipartParser parser = new MultipartParser(stream);
if (parser.Success)
// Save the file
File.WriteAllBytes(filepath, parser.FileContents)
【讨论】:
以上是关于使用 jQuery 上传文件插件时出错,将不需要的字符串附加到文件 (WebKitFormBoundary)的主要内容,如果未能解决你的问题,请参考以下文章
使用webuploader插件上传图片时如果正确 限制上传数量