基础知识,可由此衍生。原文:http://uniapple.net/blog/?p=2050

In this post, I will show you how to upload a file using Ajax (Asynchronous JavaScript and XML) and receive the binary data in Asp.net C#. And it is ultra simple!

1. HTML

<input id="bannerImage" name="bannerImage" type="file"><input οnclick="javascript:uploadfile()" type="button" value="upload">

2. JS

function uploadfile(){var bannerImage = $("#bannerImage").val();if (bannerImage) {var file = document.getElementById('bannerImage').files[0];var formData = new FormData();formData.append(file.name, file);var xhr = new XMLHttpRequest();var url = "/Category/UpdateBannerImage";xhr.open('POST', url, true);xhr.onload = function (e) {var response = $.parseJSON(e.target.response);console.log(response.fileName);};xhr.send(formData);  // multipart/form-data}
}

(Sending Binary Data)

3. C#, Receiving binary data

public JsonResult UpdateBannerImage()
{HttpPostedFileBase bannerImage = Request.Files[0] as HttpPostedFileBase;if (bannerImage != null && bannerImage.ContentLength > 0){var fileName = Path.GetFileName(bannerImage.FileName);fileName = Regex.Replace(fileName, @"\s|\$|\#\%", "");var path = Path.Combine(Server.MapPath("~/images/category_banners"), fileName);bannerImage.SaveAs(path);return Json(new { success = false ,error = false, message = "Image has been updated successfully", fileName = fileName });}else{return Json(new { success = true, error = "File is empty" });}
}

转载于:https://www.cnblogs.com/walkerwang/p/3551647.html

Uploading File using Ajax and receiving binary data in Asp.net (C#)[转]相关推荐

  1. Sending and Receiving Binary Data

    responseType属性可以设置server返回字节的解析类型.比如"arraybuffer", "blob", "document", ...

  2. String or binary data would be truncated

    提示:String   or   binary   data   would   be   truncated.   步骤:在执行插入语句时,会提示上面的error. 原因:是因为数据库中定义的字段长 ...

  3. [Microsoft][ODBC SQL Server Driver][SQL Server]String or binary data would be truncated.

    Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e57' [Microsoft][ODBC SQL Server Driver][SQL Ser ...

  4. xampp Setting file ‘D:\E\develop_software\xampp\mysql\data\ibtmp1‘ size to 12 MB. Physically writing

    安装xampp,启动mysql,出现以下报错 InnoDB: using atomic writes. 2022-06-23  9:18:29 0 [Note] InnoDB: Mutexes and ...

  5. SQL:String or binary data would be truncated

    SQL数据库提示:String or binary data would be truncated 背景步骤:在执行插入语句时,会提示上面的error. 原因:是因为数据库中定义的字段长度比较小,在插 ...

  6. CYQ.Data、ASP.NET Aries 百家企业使用名单

    如果您或您所在的公司正在使用此框架,请联系左侧的扣扣,告知我信息,我将为您添加链接: 以下内容为已反馈的用户,(收集始于:2016-08-08),仅展示99家: 序号 企业名称 企业网址 备注 1 山 ...

  7. 《ASP.NET AJAX程序设计 第I卷 服务器端ASP.NET AJAX Extensions与ASP.NET AJAX Control Toolkit》目录(最终定稿)...

    第一二卷都比较简单,特别是第一卷,讲的都是服务器端控件.第二卷是客户端部分,第三卷是高级内容,包括调试.性能.部署.控件开发.源代码结构.用户体验.心理学模型等等-- 第一卷争取在四月份出版,谢谢各位 ...

  8. jquery file upload ajax上传图片 简单使用

    为什么80%的码农都做不了架构师?>>>    最近要在做后台的图片上传,要用ajax异步上传图片,原生js实现很难 jquery file upload 插件很轻松就完成了 < ...

  9. ajax传值的url,JQuery ajax url传值与data传值的区别

    url传中文,乱码,即便charset为 UTF-8, $.ajax({ type: "POST", cache: false, url: "/ProductTypeAn ...

  10. ajax function不执行,ajax的success: function (data)不执行怎么回事?

    我有如下js函数 function poll() { console.log("id is: " + "${id}"); var id = "${id ...

最新文章

  1. ubuntu的学习教程(常用操作)
  2. 教你写一个可以找到.m文件所有接口名的命令行工具
  3. 理解Linux系统的日志
  4. 微软开放Holographic平台,意在统一VR的操作系统?
  5. java完全解耦_java-完全解耦
  6. xml动态生成java_从XML文档动态生成Java类
  7. 52 SD配置-定价配置-定义定价程序确定
  8. 【加密算法】Base64
  9. ktv服务器管理系统,KTV收银管理系统.doc
  10. linux让别人电脑蓝屏,教你如何让别人电脑瞬间蓝屏!只需要两个键,装逼神器,值得拥有...
  11. 什么是股票量化交易策略?
  12. ES报错处理-mapper [xx.xx] of different type, current_type [text], merged_type [keyword]
  13. 计算机内存条能装几个,怎么查看电脑可以插多少内存条
  14. 计算机一级office分数要求,2015计算机一级MSOffice考试方式和要求
  15. 【读后感】《关键对话》
  16. Android字体加粗的几种样式
  17. 数据库操作银行管理系统
  18. 给定一个大小为 *n* 的数组,找到其中的多数元素。多数元素是指在数组中出现次数大于 *⌊ n/2 ⌋* 的元素。
  19. 减肥服务APP开发详细内容
  20. 计世独家:新加坡国家网格雏形已现

热门文章

  1. python类:magic魔术方法
  2. Vector、ArrayList和List的异同
  3. python ndarray转binary_Python 实现Image和Ndarray互相转换
  4. SLAM会议笔记(四)Lego-LOAM
  5. 力扣-72 编辑距离
  6. mxonline实战14,全局搜索,修改个人中心页面个人资料信息
  7. hdu 1890 Robotic SortI(splay区间旋转操作)
  8. jdk完全卸载(亲测jdk1.7.0_80在win7)
  9. swift label不同颜色、不同字体
  10. 使用web.xml方式加载Spring时,获取Spring context的两种方式