<!--只接受.dwg文件-->
<input type="file" id="CADFile" accept=".dwg">
<button οnclick="upload()">上传</button>function upload() {/*此函数用于,CAD文件的上传。*/// 获取文件对象。let file = document.getElementById("CADFile").files[0];if (file) {// console.log("file:", file);// name: "SⅥ-L03 平面图0402.dwg"// size: 4793696// 提示。$("#tooltips").html("上传中...");// 文件名,包含扩展名。let fileName = file.name;// 文件大小,单位:B(byte 字节)。fileSize = file.size;// 文件名(不包含扩展名及其路径), 比如:Drawing5。let filenameWithoutPath = fileName.slice(0, fileName.lastIndexOf('.'));// 文件扩展名(比如:dwg)。let extension = fileName.slice(fileName.lastIndexOf('.') + 1);// 构造FileReader。let fileReader = new FileReader();// readAsDataURL 方法会读取指定的 Blob 或 File 对象。// 读取操作完成的时候,readyState 会变成已完成DONE,并触发 loadend 事件,// 同时 result 属性将包含一个data:URL格式的字符串(base64编码)以表示所读取文件的内容,// 类似这样:data:application/octet-stream;base64,QUM...。fileReader.readAsDataURL(file);// 处理load事件。该事件在读取操作完成时触发。fileReader.onload = function () {// console.log("fileReader:", fileReader);// 获取文件内容,字符串(base64编码)形式。let fileContent = fileReader.result;// 服务器约定:// base64string是纯string,不带readAsDataUrl里的“data:application/octet-stream;base64,”。// 去掉文件内容的开头(data:application/octet-stream;base64, data:;base64,)。let fileContent2 = fileContent.slice(fileContent.indexOf(",") + 1);// 根据服务提供的接口,构造要上传的数据(经测试,必须时json对象的形式)。let data = {base64string: fileContent2,filenameWithoutPath: filenameWithoutPath,extension: extension};// 上传文件,并获取服务器返回的内容(服务器上存储此文件的绝对路径,类似这样:// E:\NanZhan\CAD服务\WebServer\UploadFile\Drawing6_b408685f-b528-4cd2-ae92-2752789f7f70.dwg)。$.ajax({type: "post",  // 规定请求的类型(GET 或 POST)。url: "http://60.28.130.106:81/cadServer/DwgService.asmx/UploadFileBase64string", // 发送请求的地址。data: data, // 规定要发送到服务器的数据。dataType: 'json',  // 预期服务器返回的数据类型。beforeSend: function (xhr) {/*发送请求前可修改 XMLHttpRequest 对象的函数,如添加自定义 HTTP 头。* xhr, XMLHttpRequest 对象。*/xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");},error: function (xhr, status, error) {/*如果请求失败要运行的函数。* xhr, XMLHttpRequest 对象。* status, 请求状态(parsererror)。* error, 错误信息。比如:error: SyntaxError: Unexpected token N in JSON at position 29。*/console.log("xhr:", xhr);console.log("status:", status);console.log("error:", error);},success: function (result, status, xhr) {/*当请求成功时运行的函数。* result, 服务器返回的内容。* status, 请求状态(success)。* xhr, XMLHttpRequest 对象。*/// console.log("result:", result);// result: {"localFileNameOnServer":"E:\NanZhan\CAD服务\WebServer\UploadFile\Drawing6_b408685f-b528-4cd2-ae92-2752789f7f70.dwg"}// 清空提示。$("#tooltips").html("");localFileNameOnServer = result.localFileNameOnServer;// console.log(localFileNameOnServer);// E:/NanZhan/CAD服务/WebServer/UploadFile/Drawing5.dwggetLayersFromDwgFile(localFileNameOnServer);}});};}
}

jquery ajax上传本地dwg文件到服务器.txt相关推荐

  1. ajax上传本地音频文件,使用ajax将音频blob上传到文件夹中

    我正在构建一个录音项目,我想通过blob将音频上传到文件夹(上传). 这是我迄今取得的成就: var url = URL.createObjectURL(blob); var li = documen ...

  2. flask ajax 上传 图片,flask jQuery ajax 上传文件

    1.html 代码 注:1.html 部分主要是一个form表单,其中表单的enctype = "multipart/form-data" 必须要有. 2.由于我的页面背景颜色设置 ...

  3. Jquery+ajax上传文件

    前言: 之前做文件操作都是直接通过表单提交的,这几天做了一个前台用jquery+ajax上传文件,后台用MVC接受文件,由于第一次用jquery+ajax做上传文件,所以用来写个博客.方便以后直接用. ...

  4. ajax上传和下载文件

    ajax上传和下载文件 jQuery本身支持上传文件,但是不支持下载文件,这里要用到的组件是axios. <form class="form-horizontal" meth ...

  5. google支持本地ajax,360chrome,google chrome浏览器使用jquery.ajax加载本地html文件

    使用360chrome和google chrome浏览器加载本地html文件时,会报错,提示: XMLHttpRequest cannot load file:///Y:/jswg/code/html ...

  6. leaflet使用L.KML.js插件上传本地kml文件到leaflet中

    发现网上的案例都是加载项目assets内的kml文件,而实际的需求是:用户需要上传自己计算机上的kml文件,找了半天没找到案例,最后终于研究出来了,喜欢的点赞支持! 1.网上案例使用 L.KML.js ...

  7. PHP上传大型视频文件到服务器,解决方案

    PHP用超级全局变量数组$_FILES来记录文件上传相关信息的. 1.file_uploads=on/off 是否允许通过http方式上传文件 2.max_execution_time=30 允许脚本 ...

  8. 联邦学习【分布式机器学习技术】【①各客户端从服务器下载全局模型;②各客户端训练本地数据得到本地模型;③各客户端上传本地模型到中心服务器;④中心服务器接收各方数据后进行加权聚合操作,得全局模型】

    随着计算机算力的提升,机器学习作为海量数据的分析处理技术,已经广泛服务于人类社会. 然而,机器学习技术的发展过程中面临两大挑战: 一是数据安全难以得到保障,隐私数据泄露问题亟待解决: 二是网络安全隔离 ...

  9. jquery ajax 上传文件 demo,Jquery+AJAX上传文件,无刷新上传并重命名文件

    index.html Ajax上传图片 Ajax上传图片 function upload(){ var form = new FormData(document.getElementById(&quo ...

最新文章

  1. DAS工具: 利用去重、聚合和评分的策略从宏基因组中恢复基因组
  2. Java基础-序列化与反序列化
  3. 用Apache Ivy实现项目里的依赖管理
  4. 易语言易语言浏览器html5,易语言做浏览器的方法
  5. RESTful Web服务可发现性,第4部分
  6. python抢货程序_写个Python程序上下班抢个顺风单
  7. Vue项目中使用Echarts(二)
  8. JEECG再创新举,开辟云应用开发新时代,打造jeecg企业级云应用生态圈
  9. PHP生成url的函数,U函数:URL地址生成
  10. java 异常处理 Throwable Error 和Exception
  11. Intel MKL 稀疏矩阵求解PARDISO 函数
  12. Django之路第四篇:Models
  13. PHP网站批量自动发外链工具源码
  14. linux检测路径是否存在,不存在则创建指定路径
  15. 软件测试--因果图分析方法
  16. VS 调试时,不允许修改代码
  17. 舒适区、学习区、恐慌区
  18. mysql分组取所有数据_mysql 分组后取每个组内最新的一条数据
  19. android手机启动u盘,十款适合Android手机使用的U盘
  20. 小技巧大用处!这些渠道让你的群发邮件更省心

热门文章

  1. 计算机网络改变人们的思维,2012年4月浙江自学考试网络艺术真题
  2. DSP28335,三相逆变电路电压闭环程序,三相逆变数字电源程序
  3. Java语言特点可移植性_Java 语言具有很多优势和特点,以下()特点能保证软件的可移植性。...
  4. 利用移动硬盘\高速U盘\SSD制作随身Windows10系统
  5. 如何删除kafka主题数据
  6. 自学SQL网之学习笔记(题目+答案)
  7. svn 被锁住 冲突 Can‘t revert without reverting children
  8. 软考中级软件设计师之商标
  9. 调用接口登录禅道_请教调用API新增禅道用户
  10. 2014年5月最后一周工作总结