我正在使用此插件:http://hayageek.com/docs/jquery-upload-file.php
我用它将文件发送到WCF Rest服务并将其保存在硬盘上。
上传工作正常,但问题是图片,exe等上传已损坏。 如果我用文本编辑器打开上传的文件,我可以看到不需要的字符串
开始时:
------ WebKitFormBoundaryPUTfurckDMbpBxiw Content-Disposition:form-data; NAME = “文件”; 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
有什么想法解决这个问题吗?
答案 0 :(得分: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)
}
}