gpt4 book ai didi

c# - 通过 dropzone.js 上传文件报错,请求格式无效 : multipart/form-data;

转载 作者:太空宇宙 更新时间:2023-11-03 10:46:51 24 4
gpt4 key购买 nike

我正在使用 dropzone 将多个文件上传到 Web 服务,但是我不断收到错误消息:

System.InvalidOperationException: Request format is invalid: multipart/form-data;      boundary=----------WmBuH1mgT5UyAi5sEK0qnm.
at System.Web.Services.Protocols.HttpServerProtocol.ReadParameters()
at System.Web.Services.Protocols.WebServiceHandler.CoreProcessRequest()

这是我的 C# 函数

 public bool InvokeTest(byte[] binaryarray, string docname)

因为我试图避免 Page_Load 并尝试使其在没有表单提交且仅使用 jQuery 函数的情况下工作:

$('#dropzone').dropzone({
url: '_upload/uploader.asmx/InvokeTest',
enctype: 'multipart/form-data',
maxFilesize: 1,
paramName: 'photos',
addRemoveLinks: true,
enqueueForUpload: false,
});

我的表单提交看起来很简单:

<form id="Form1" action="_upload/uploader.asmx/InvokeTest" method="post" enctype="multipart/form-data" runat="server" class="dropzone">

我的问题:是否可以在没有“表单”的情况下使用 dropzone 并通过 jQuery 直接发布它并避免我在 web 服务上出现令人讨厌的错误....

期待任何想法和/或建议,

谢谢

最佳答案

Dropzone.js 与 web 服务一起工作得很好 & 更具体地说,它可以在以下场景中使用

  • 您正在使用表单发布到 WebServiceURL
  • 您要上传多张图片

,根据您的问题判断,您原本打算这样做。

下面是此类场景的详细示例。尽管在示例中 ServiceStack(而不是 WCF)被用作 WebService:[ Uploading images using ServiceStack and Dropzone ]

这表明您的 WebService c# 函数设置不正确,无法处理发布请求。

另一个重要的 dropzone 配置是使用 parallelUploads = 1。如果多个上传都希望在服务器端实现上访问同一个 memoryStream,我发现这是一个问题。

$('#dropzone').dropzone( {
parallelUploads: 1,
uploadMultiple: true,
autoProcessQueue: true
});

关于c# - 通过 dropzone.js 上传文件报错,请求格式无效 : multipart/form-data;,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23057479/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com