当前位置: 首页 > news >正文

做seo网站要多少钱清远新闻最新消息

做seo网站要多少钱,清远新闻最新消息,东莞事件最新消息新闻,达内it教育官网项目框架 net6 webapi 放开上传大小限制 放开代码 | 框架层限制 在 Program.cs 文件中添加如下代码 不然会出现下面的限制错误 From表单限制#xff1a;Failed to read the request form. Multipart body length limit 134217728 exceeded 请求体超长#xff1a;Request bo… 项目框架 net6 webapi 放开上传大小限制 放开代码 | 框架层限制 在 Program.cs 文件中添加如下代码 不然会出现下面的限制错误 From表单限制Failed to read the request form. Multipart body length limit 134217728 exceeded 请求体超长Request body too large. The max request body size is 30000000 bytes. builder.Services.ConfigureKestrelServerOptions(x {x.AllowSynchronousIO true; // 配置可以同步请求读取流数据x.Limits.MaxRequestBodySize int.MaxValue;}).ConfigureIISServerOptions(x {x.AllowSynchronousIO true;x.MaxRequestBodySize int.MaxValue; // 设置请求体可接收的最大值}).ConfigureFormOptions(x {// 设置表单上传文件的大小限制// 如果不配置默认是128兆x.MultipartBodyLengthLimit int.MaxValue;});设置 nginx 或 iis 中的大小限制 IIS 层 找到对应程序的 web.config 添加如下代码配置 securityrequestFiltering!-- 1000 MB in bytes --requestLimits maxAllowedContentLength1048576000 //requestFiltering/security若缺少 system.webServer 等节点添加上即可 nginx 层 在 conf 文件里的 nginx.conf 配置文件 http 中添加节点 client_max_body_size 1000m;分片上传代码实现 请求参数 UploadFileInChunksVO 类 /// summary /// 功 能 N/A /// V0.01 2023/10/24 17:56:36 xliu 初版 /// /summary public class UploadFileInChunksVO { /// summary/// 分片后的文件/// /summarypublic IFormFile File { get; set; }/// summary/// 当前块从1开始/// /summarypublic int ChunkNumber { get; set; }/// summary/// 总块数/// /summarypublic int TotalChunks { get; set; } }添加控制器 Controller 必须添加 [FromForm] 标识不然 FIle 识别不到 AppSettings 是一个自行实现读取配置文件的方法 RunInterceptException 是自定义的异常类统一错误捕获处会对这个做 400 的异常处理 public async TaskIActionResult UploadFile([FromForm] UploadFileInChunksVO chunksVO) {if (chunksVO.ChunkNumber 0 || chunksVO.TotalChunks 0)throw new RunInterceptException(上传的数据块标识能为0);// 创建用于存储上传文件的文件夹// 可以是读取当前服务的地址我这边项目是集群化的所有存储地址必须是一个地方不然没办法合并var path AppSettings.app(new string[] { Startup, AppData }); if (path null || path.IsNullOrEmpty())throw new RunInterceptException(文件存储服务路径为空);var folderPath Path.Combine(path, Uploads, JD_EDI);var tempPath Path.Combine(folderPath, Temp);await _fileService.UploadFileInChunksAsync(chunksVO.File, tempPath, chunksVO.ChunkNumber);// 上传最后一块了 进行合并if (chunksVO.ChunkNumber chunksVO.TotalChunks){// 构造合并后的文件路径var mergedFilePath Path.Combine(folderPath, chunksVO.File.FileName);await _fileService.MergeFileAsync(mergedFilePath, tempPath, chunksVO.File.FileName, chunksVO.TotalChunks);// 合并后的操作var res await _ediService.SalesStockAsync(mergedFilePath);return Ok(处理成功数 res);}return Ok(接收成功); }服务接口定义 IUploadFileService 项目做了接口、服务分离。使用依赖注入的方式 若没这项要求的 可以直接使用后面的方法实现 /// summary /// 功 能 上传文件服务 /// V0.01 2023/10/24 15:01:01 xliu 初版 /// /summary public interface IUploadFileService {/// summary/// 分片上传文件/// /summary/// param namefile正在上传的文件/param/// param nametempFilePath临时存储分片数据的目录/param/// param namechunkNumber当前分片块/param/// returns最终文件保存路径/returnsTaskstring UploadFileInChunksAsync(IFormFile file, string tempFilePath , int chunkNumber);/// summary/// 用于合并文件块并处理完整文件的方法/// /summary/// param namemergedFilePath合并后文件的保存地址/param/// param nametempPath分片文件的保存地址/param/// param namefileName/param/// param nametotalChunks/param/// returns/returnsTask MergeFileAsync(string mergedFilePath, string tempPath, string fileName, int totalChunks); }服务接口实现 UploadFileService /// summary /// 功 能 N/A /// V0.01 2023/10/24 15:05:09 xliu 初版 /// /summary public class UploadFileService : IUploadFileService {public async Taskstring UploadFileInChunksAsync(IFormFile file, string tempPath, int chunkNumber){if (!Directory.Exists(tempPath)){Directory.CreateDirectory(tempPath);}// 构造当前块文件的路径var filePath Path.Combine(tempPath, file.FileName _ chunkNumber);// 将文件块写入磁盘using (var fileStream new FileStream(filePath, FileMode.Create)){await file.CopyToAsync(fileStream);}return filePath;}public async Task MergeFileAsync(string mergedFilePath, string tempPath, string fileName, int totalChunks){// 创建用于存储合并后文件的流using var mergedFileStream new FileStream(mergedFilePath, FileMode.Create);// 循环处理每个文件块for (int i 1; i totalChunks; i){// 构造当前文件块的路径var chunkFilePath Path.Combine(tempPath, fileName _ i);// 创建用于读取文件块的流using (var chunkFileStream new FileStream(chunkFilePath, FileMode.Open)){// 将文件块内容复制到合并文件流中await chunkFileStream.CopyToAsync(mergedFileStream);}// 删除已合并的文件块System.IO.File.Delete(chunkFilePath);}}上传测试 这边只给到 postman 的示例 前端实现 无非就是根据文件大小切分成多个文件 单次上传一部分 每次上传变化 file 和 chuckNumber 即可当 chunkNumber 和 totalChunks 相等时便上传完成
http://www.pierceye.com/news/34355/

相关文章:

  • 销售网站建设工资多少哪个网站可以做链接
  • 营销型网站建设的主要流程包括网站域名被注册
  • WordPress评论博主杭州seo平台
  • 网站设计需求文档专注于网站营销服务
  • 山西建设执业注册管理中心网站长治建网站
  • 网站设计深圳联系电话?最新国际军事动态
  • 专注苏州网站建设营销网页
  • 和田地区建设局网站最好的建设网站
  • 学习怎样建网站wordpress 下载站插件
  • 哪个网站做简历好如何创建手机网站
  • 网站设计与开发的基本步骤包括哪些?东莞网站建设 喷砂机
  • 仿163源码交易平台宽屏整站源码 网站模板交易平台源码建设企业网站收费吗
  • wordpress网站维护插件网店装修时如何进行文案策划
  • 网站制作com cn域名有什么区别湛江高端网站建设
  • 石景山网站建设的大公司丹徒网站建设方案
  • 哪些产品可以做单页网站网上推广怎么做
  • 替别人做设计的网站大连app开发定制
  • 一个网站多个数据库动漫制作专业介绍及就业方向
  • 免费网站源码下载中堂镇仿做网站
  • 做网站需要哪些技能eclipse网站开发流程
  • 宾馆在什么网站做推广效果好网站做单链 好不好
  • 如何注册一家网站建设公司赣州福泰龙网站建设
  • 小程序要先做网站腾讯云服务器免费领取
  • 在哪家网站上可以找到加工活做wordpress get terms
  • 怎么修改网站的源代码营销型网站推广方案
  • 网站添加模块网站建设属于软件开发
  • txt免费全本电子书软件下载网站wordpress获取动态页面
  • 百度网站开发企业网站及信息化建设
  • 长沙品牌网站制作服务报价创立网站
  • 建一个在线商城网站汉口北做网站