- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在将 zip 文件上传到 Azure 进行 Web 作业时遇到了问题。
当 zip 文件大小小于 10MB 时,一切顺利,但是当尝试上传更大的文件时,我收到此异常:
The stream does not support concurrent IO read or write operations
堆栈:
- at System.Net.ConnectStream.InternalWrite(Boolean async, Byte[] buffer, Int32 offset, Int32 size, AsyncCallback callback, Object state)
- at System.Net.ConnectStream.Write(Byte[] buffer, Int32 offset, Int32 size)
- at System.Net.WebClient.UploadBitsState.WriteBytes()
- at System.Net.WebClient.UploadBits(WebRequest request, Stream readStream, Byte[] buffer, Int32 chunkSize, Byte[] header, Byte[] footer, CompletionDelegate uploadCompletionDelegate, CompletionDelegate downloadCompletionDelegate, AsyncOperation asyncOp)
- at System.Net.WebClient.UploadFile(Uri address, String method, String fileName)
这是我的代码:
var client = new MyWebClient
{
Credentials = new NetworkCredential(webSite.UserName, webSite.Password),
};
client.Headers.Add(HttpRequestHeader.ContentType, "application/zip");
client.Headers.Add("Content-Disposition", $"attachment; filename={appFile}");
var response = client.UploadFile(uploadUri, "PUT", filePath);
哪里MyWebClient
是 WebClient
的实现我需要在其中设置超时:
private class MyWebClient : WebClient
{
protected override WebRequest GetWebRequest(Uri uri)
{
WebRequest w = base.GetWebRequest(uri);
w.Timeout = 20 * 60 * 1000;
return w;
}
}
知道尺寸限制在哪里吗?我确信它是客户端而不依赖于 .Net Framework,因为我对其中的几个进行了测试。
编辑解决方案是通过将 WebClient 强制转换为 HttpWebRequest 来强制 AllowWriteStreamBuffering 为 false:
protected override WebRequest GetWebRequest(Uri uri)
{
WebRequest w = base.GetWebRequest(uri);
w.Timeout = 20 * 60 * 1000;
var httpRequest = w as HttpWebRequest;
if (httpRequest != null)
{
httpRequest.AllowWriteStreamBuffering = false;
}
return w;
}
最佳答案
此行为记录在此博客条目 http://vikeed.blogspot.co.uk/2011/03/uploading-large-files-using-http-put-in.html 中建议添加以下内容;
HttpWebRequest request = new ...
request.AllowWriteStreamBuffering = false;
此处发布了相同的问题 C# HttpClient PUT这表明使用 AllowAutoRedirect = false
会导致此错误。
您可以尝试按照这两篇类似帖子中的建议修改您的设置,看看是否可以纠正您的错误。
关于c# - WebClient的UploadFile大小限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37239297/
例子 这是我的代码: from typing import List from fastapi import FastAPI, File, UploadFile import asyncio imp
我有一个带有 2 个选项卡的选项卡 View 。我想为每个选项卡使用两个 uploadFile 组件。我对 uploadFile 组件使用“高级”模式。当我尝试为第一个选项卡 uploadFile 组
如何在没有 FileUpload.SaveAs Method 的情况下获取在 FileUpload 控件中选择的数据(读取文件)在服务器上?是否可以立即将其写入某个对象? 最佳答案 使用 FileUp
在我的应用程序中,我有 cordova camera允许我拍照并从中获取 URI 的插件。 const options: CameraOptions = { quality: 100, des
我需要帮助如何设置上传的文件的最后修改时间(在 jsp 上)。 我需要知道文件上传的时间。这是我的代码,但 Eclipse 说“方法 setLastModified(Date) 对于 UploadFi
我正在尝试使用 eBay Large Merchant Services API 批量上传调用。这个 API 和文档是出了名的糟糕(我发现了一篇博客文章解释了它并反对它 here )。我能找到的最接近
Katalon 自定义“uploadFiles”关键字未加载文件。 Katalon 网站声明 Katalon 关键字“UploadFile”将仅在该标签存在于页面上时起作用(该标签不存在于我的测试页面
我正在尝试以 iframe 内的形式上传图像。我尝试先切换到框架,然后调用 uploadFile。开关可以工作,但上传不起作用。我认为上传文件是在主页的环境中评估的,因此选择器失败,有没有办法在 if
我有一个问题,我正在通过 uploadfile js 创建一个上传函数。如果文件不是excel文件,系统将显示错误。如何通过uploadfile js实现验证excel格式?这是我的来源 $(docu
我正在尝试从 上传文件HTML 标记,使用 uploadFile方法。 uploadFile Promise 已解决,但进度值 { var F
我正在使用 WebClient 对象上的 UploadFile 方法上传文件。上传文件后,我希望得到确认,根据 MSDN(以及 stackoverflow 上的此处:Should I check th
我有一个使用网络客户端将文件上传到服务器的应用程序。我想在文件上传过程中显示进度条。我将如何实现这一目标? 最佳答案 WebClient.UploadFileAsync将允许你这样做。 WebClie
我以前从未使用过 WebClient,我不确定是否应该检查服务器的响应以了解上传是否成功,或者如果没有异常我是否可以让文件上传。 如果我应该检查响应,我该怎么做?正在解析 resposeHeaders
基本上,我正在尝试创建一个端点以将文件上传到 Amazon S3。 async def upload_files(filepath: str, upload_file_list: List[Uploa
我在嵌入式设备上运行 FastAPI 应用程序。嵌入式设备的资源有限(磁盘空间和 RAM)。但是,可以使用空间充足的 SD 卡。我想上传一个大文件并将其存储在 SD 卡上。 FastAPI docum
请问我可以知道使用 uploadfile api 上传到 azure 存储 blob 的最大文件大小是多少。 最佳答案 block Blob 最初的最大大小为 200GB( block 大小为 4MB
我正在尝试将JSON文件上传到nodejs服务器,该服务器使用ng multer作为接收文件的中间件,并且RNFS.uploadFiles仅适用于原始Multer,不适用于具有特定字段的multer,
我正在尝试在项目中使用 WebClient.UploadFile 将文件发布到服务器。 WebClient.UploadFile 接受文件名 uri 作为参数,但我想传递文件流而不是文件名 uri。这
尝试使用以下代码上传文件时出现以下异常: string encodedUrl = "videos/Sample.mp4" CloudBlockBlob
我有三张图片。我使用 javascript 来标记选择了哪一个。用户点击一个后,我将其类别更改为事件。它的 .现在,当我在表单发布后不使用 updatepanel 时,我可以从后面的代码中看到哪个元素
我是一名优秀的程序员,十分优秀!