blob

前台页面上传data image图片,java后台接收图片保存

泄露秘密 提交于 2020-03-18 22:10:18
最近在项目中有这么一个需求,就是上传一个视频文件,然后要获取视频文件的第一帧图片,这个可以通过canvas获取得到,得到的是一个dataURL,之后还要将这个图片上传到云,这个时候如何操作就不清楚了,于是乎,google一番,总结如下: 将dataURL转成Blob 利用formData 异步上传 function b64toBlob(b64Data, contentType='', sliceSize=512) { const byteCharacters = atob(b64Data); const byteArrays = []; for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) { const slice = byteCharacters.slice(offset, offset + sliceSize); const byteNumbers = new Array(slice.length); for (let i = 0; i < slice.length; i++) { byteNumbers[i] = slice.charCodeAt(i); } const byteArray = new Uint8Array(byteNumbers); byteArrays.push

JavaScript blob encoding as UTF-8 instead of ANSI

橙三吉。 提交于 2020-03-18 06:31:50
问题 I use a JavaScript blob to create an FDF file which opens & fills in a locally stored PDF. However, the file path to the locally stored PDF contains an accented character (and I am unable to edit the folder name). This code works when the folder path doesn’t contain an accent and if I open the fdf in Notepad, the default encoding is ANSI. But when the folder path contains an accent, the FDF opens to a message stating the PDF cannot be found. Furthermore, the default encoding in Notepad has

使用Azure Data Share 共享数据

旧城冷巷雨未停 提交于 2020-03-17 11:54:53
前面和大家聊了使用Azure数据共享可帮助您与其他组织简单安全地共享来自多个来源的数据。轻松控制您共享的内容,谁接收您的数据以及使用条款。没有可以设置或管理的基础结构,并且数据共享使用Azure资源的托管身份并与Azure Active Directory(AAD)集成来管理凭据和权限。那么接下来我们就看一下如何使用Azure Data Share将企业内部数据共享给客户和合作伙伴。 创建Azure Data Share 登陆到Azure Portal,点击“创建服务”--搜索“Data Share”,然后点击创建: 设置资源组名、位置、名称: 确认无误,点击创建: 创建完成如下图所示: 配置数据共享 点击“Start sharing your data”: 点击“创建”: 设置名称、共享类型、描述和使用条款: 点击“添加数据集”: 系统会给我们弹出一个显示目前受支持的窗口,具体支持如下数据集: Azure Synapse Analytics Azure SQL Database Azure Data Lake Storage Azure Blob Storage Azure Data Explorer 再此我们使用Azure Blob Storage: 然后选择我们所要共享的Blob和container: 设置我们所要共享的数据集名称: 点击“确认”: 点击“添加收件人”:

Azure Blob Storage从入门到精通

烈酒焚心 提交于 2020-03-15 13:45:11
今天推荐的是一个系列文章,让读者阅读完成后可以对Azure Blob Storage的开发有一个全面的了解,可谓是从入门到精通。 Azure在最初的版本里面就提供了非结构化数据的存储服务,也即Blob Storage。其是Azure中非常重要和基础的一项服务,支撑着很多其他服务的运行(比如虚拟机等)。前不久Azure出现故障,就是Blob Storage导致的。 Robin Shahan (女程序猿)发表了一个系列文章,全面的介绍Azure Blob Storage的开发。这个系列文章分为10个部分: 介绍:介绍了Azure Blob Storage的基本概念,用途,Blob的类型,访问地址,容错能力,计费方式。 入门:如何在Azure控制台中创建Blob Storage空间(容器),Management Studio的使用,上传下载文件。 Storage Client函数库的使用:主要讲的是.NET版本的SDK的使用,如何设置容器,基本的文件夹、文件操作。 上传大文件:讲述如何使用SDK中分割、串流化上传大文件的方式。 REST API:讲述SDK背后的REST API的细节和使用方式。 属性和元数据:解释Blob对象的一些属性和元数据的概念,如何获取这些元数据,如何自定义元数据等。 快照:讲述如何获得快照,列出现有快照,恢复快照,删除快照等。 Blob租用

FileReader基础

本秂侑毒 提交于 2020-03-14 12:47:47
FileReader语法 例子 属性 FileReader.error 表示在读文件操作过程中发生的错误 FileReader.readyState 表示 FileReader 读取数据的状态,有三个值: EMPTY:没有数据被加载 LOADING:数据正在被加载 LOADING:数据正在被加载 FileReader.result 代表数据读取完成后的结果,只有在数据被加载完成后,result属性才有效。 事件 FileReader.onbort 在 FileReader 的 reading 操作被中断的时候触发。 FileReader.onerror 在 FileReader 读取数据过程中发生错误时触发 FileReader.onload 在 FileReader 读取事件完成后调用 FileReader.onloadstart 在 FileReader 读取事件开始时调用 FileReader.onloadend 在 FileReader 读事件完成后调用 FileReader.onprogress 在 FileReader 读取数据的过程中调用 方法 FileReader.abort() 中断读数据操作,直接返回,readyState将被设置为DONE FileReader.readAsArrayBuffer() 读取Blob类型的数据

vue使用下载插件来完成下载文件

岁酱吖の 提交于 2020-03-10 00:15:14
leixign vue下载插件 1.当我使用a标签实现下载的时候,是能解决下载的问题,但是会跳转页面。 2.那么我们使用点击事件后,用window.open或者window.localtion.href,那么也会和使用a标签的效果是一样的,用户体验度,较差。 3.那么我们改成download.js,完成了预期想要的效果,但是遇见一个问题,dowload.js只能自写内容来下载,那么我们如何实现根据url来实现下载的内容那。 我们可以修改 url = !strFileName && !strMimeType && payload; 改为:url = payload;就可以实现效果了。 但是还有一个问题,就是我们直接从download.js中下载的js是()() //注:这种应该是自执行函数 所以在vue调用时会有bug,我们可以把downloadjs中复制download函数中的内容进行修改: 如下所示:(以后需要下载, 直接复制用以下内容放入一个新建js文件 即可使用) //download.js v3.0, by dandavis; 2008-2014. [CCBY2] see http://danml.com/download.html for tests/usage // v1 landed a FF+Chrome compat way of downloading

非阻塞/异步(epoll) openssl

天大地大妈咪最大 提交于 2020-03-09 13:41:09
前段时间在自己的异步网络框架handy中添加openssl的支持,当时在网络上搜索了半天也没有找到很好的例子,后来自己慢慢的摸索,耗费不少时间,终于搞定。因此把相关的资料整理一下,并给出简单的例子,让后学者可以少费些力气。 同步的openssl调用网上已经有许多的例子,这里就不再详细介绍,大家也可以直接读源代码: 同步客户端:https://github.com/yedf/openssl-example/blob/master/sync-ssl-cli.cc 该例子连接www.openssl.com:443,发送一个Http请求,并打印结果中的前256个字符 同步服务器端:https://github.com/yedf/openssl-example/blob/master/sync-ssl-svr.cc 该例子监听本地的443端口,并返回一个简单http响应 下面详细介绍非阻塞调用 1. 初始化SSL库 SSL_load_error_strings (); SSL_library_init (); sslContext = SSL_CTX_new (SSLv23_method ()); //server端需要初始化证书与私钥 string cert = "server.pem", key = "server.pem"; r = SSL_CTX_use_certificate

axios + vue导出excel文件

余生长醉 提交于 2020-03-07 05:17:48
(使用到了elementUI框架) <template> <el-button type="primary" size="mini" @click="exportExcel">导出</el-button> </template> <script> import API from '../api/api_dispatch' export default { data() { return { myCompanyId: '' } }, created() { let userInfo = JSON.parse(window.sessionStorage.getItem('access-user')); this.myCompanyId = userInfo.companyId; }, methods: { exportExcel() { // 按需要可加上无数据不导出的判断(略) if (this.myCompanyId !== '') { API.exportExcel({ companyId: this.myCompanyId }).then(res => { var blob = new Blob([res], {type: 'application/vnd.ms-excel;charset=utf-8'}) var downloadElement = document

JS前端下载文本文件小技巧:1、download属性;2、借助Blob转换成二进制下载

大城市里の小女人 提交于 2020-03-07 05:07:58
一、HTML download 与文件下载   如果希望在前端侧直接触发某些资源的下载,最方便快捷的方法就是使用HTML5原生的 download 属性,例如: <a href="large.jpg" download>下载</a>   但显然,如果纯粹利用HTML属性来实现文件的下载(而不是浏览器打开或浏览),对于动态内容,就无能为力。   例如,我们对页面进行分享的时候,希望分享图片是页面内容的实时截图,此时,这个图片就是动态的,纯HTML显然是无法满足我们的需求的,借助JS和其它一些HTML5特性,例如,将页面元素转换到 canvas 上,然后再转成图片进行下载。    是否支持download属性的监测:要监测当前浏览器是否支持 download 属性,一行JS代码就可以了,如下: var isSupportDownload = 'download' in document.createElement('a'); 二、借助HTML5 Blob实现文本信息文件下载   原理其实很简单,我们可以将文本或者JS字符串信息借助Blob转换成二进制,然后,作为 <a> 元素的 href 属性,配合 download 属性,实现下载。   代码也比较简单,如下示意(兼容Chrome和Firefox): var funDownload = function (content,

html2canvas实现页面截图并使用axios上传

删除回忆录丶 提交于 2020-03-05 08:16:15
文档: https://html2canvas.hertzen.com/ 安装 npm install --save html2canvas 1、简单实例 点击按钮截取 id=capture 的元素 < template > < div id = " capture " style =" padding : 10px ; background : #f5da55 " > < h4 style =" color : #000 ; " > Hello world! </ h4 > < button @click = " screenshots " > screenshots </ button > </ div > </ template > < script > import html2canvas from "html2canvas" ; export default { methods : { screenshots ( ) { html2canvas ( document . querySelector ( "#capture" ) ) . then ( canvas => { document . body . appendChild ( canvas ) ; } ) ; } } } ; </ script > 生成的图片可以右键保存 2、问题:截图不全