我遇到了一个问题,在我看来,这对于大多数rails用户来说一定是个问题,但我找不到任何解决方案.
例如,当执行可能较大的二进制文件的文件上载并将其存储在数据库中时,您肯定不希望rails或ActiveRecord在开发模式下记录此特定字段(日志文件,stdout).如果是一个相当大的文件,这会导致查询执行中断并几乎杀死我的终端.
是否有任何可靠且非hacky的方法来禁用特定字段的日志记录?请记住,我不是在谈论禁用请求参数的日志记录 - 这已经很好地解决了.
感谢您的任何信息!
是否可以解析<img>DOM中的图像对象(),就像它已经使用FileReader上传和打开一样?我试图使用jpegmeta.js从JPEG中提取EXIF元数据,但它需要由FileReader返回的二进制字符串.
可以使用XHR从其URL加载图像并使用FileReader解析它.但是,如果每个图像必须下载两次,这将产生大量开销.另一种选择可能是使用画布,但在转换时会丢失exif数据.
我试图使用本文中建议的方法显示二进制文件AngularJS:在角度应用程序中显示blob(.pdf).这在Chrome和FF中运行良好,但IE 11给了我"错误:访问被拒绝".有谁知道它是否与Blob对象有关并且可以指向正确的方向?这是我的js代码:
$http.get(baseUrl + apiUrl, { responseType: 'arraybuffer' })
.success(function (response) {
var file = new Blob([response], { type: 'application/pdf' });
var fileURL = URL.createObjectURL(file);
$scope.pdfContent = $sce.trustAsResourceUrl(fileURL);
})
.error(function () {
});
Run Code Online (Sandbox Code Playgroud)
和我的HTML:
<div ng-controller="PDFController" class="modal fade" id="pdfModal" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content" onloadstart="">
<object data="{{pdfContent}}" type="application/pdf" style="width:100%; height:1000px" />
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我有一个表示PDF文件的Base64字符串.我想使用javascript将其转换为Blob对象的文件.完成后,我想使用FileSaver.js将blob保存为PDF文件.
这是我的代码:
var base64PDF = JVBERi0xLjQNCiW0t..; // This is a huge string.
var blob = new Blob([base64PDF], { type: 'application/pdf' });
saveAs(blob, "test.pdf");
Run Code Online (Sandbox Code Playgroud)
此代码不起作用.它保存了一个test.pdf,表示无法打开此pdf,因为解码时出错.
我也试过这样做:
var base64PDF = JVBERi0xLjQNCiW0t..; // This is a huge string.
var decode = atob(screen.prp_wcfria_ExternalFile.pdfFile);
var blob = new Blob([decode], { type: 'application/pdf' });
saveAs(blob, "test.pdf");
Run Code Online (Sandbox Code Playgroud)
此代码也不起作用.我该怎么做呢?
我在我的 VueJS 应用程序中使用 blob responseType 和 Axios 从服务器下载文档。当响应代码为 200 时,它可以正常工作并下载文件,但是当出现任何 http 错误时,我无法在捕获错误时读取状态代码,因为该错误是 JSON 响应。
有没有人遇到过类似的问题,并找到了一种将 blob 响应类型转换为 json 并根据状态代码抛出错误的方法?
我尝试从 Laravel 后端以纯文本形式发送响应,并尝试在前端将响应转换为 JSON 或文本,但没有成功。
我曾尝试阅读错误响应标头,但没有成功。
公理({
网址:'xxx',
方法:'获取',
responseType: 'blob',
})
.then((响应) => {
//代码读取响应并使用blob创建对象url并下载文档
})
.catch((错误) => {
console.log('错误', error.message); //没有
console.log('错误', error.error); //不明确的
console.log('错误', error.data); //不明确的
const blb = new Blob([error], {type: "text/plain"});
const reader = new FileReader();
// 在读取/加载 blob 后触发。
reader.addEventListener('loadend', (e) => {
const text = e.srcElement.result;
控制台日志(文本);
});
// 开始以文本形式读取 blob。
reader.readAsText(blb);
});
我只想根据状态代码抛出错误消息。如果它是 …
我试图将一个非常长的文本字符串插入MySQL Blob列,但MySQL只保存64kB的数据.该字符串长度为75360个字符.我正在与PHP连接mysql_connect().
有任何想法吗?
如果是Blob或Text,它会有所不同吗?我最初把它作为一个文本,但改变它没有任何影响.
此问题与旧浏览器中的如何更新(与Safari 5.1.4相关)有关并受其启发
给定一个<input type="file">具有元件files包含属性File从继承的对象Blob,是有可能创造一个ArrayBuffer和转换ArrayBuffer到一个data URI从一个Blob或File对象,而无需使用FileReader?
到目前为止已尝试过方法
WebSocket使用.binaryTypeset 创建一个mock "arraybuffer",创建一个MessageEventwith event.dataset to Fileobject; 结果是处理程序的File对象onmessage
设置原型File为ArrayBuffer,Uint8Array; 结果是Uncaught TypeError: Method ArrayBuffer.prototype.byteLength called on incompatible receiver #<ArrayBuffer>(),Uncaught TypeError: Method get TypedArray.prototype.byteLength called on incompatible receiver [object Object]()
设置File在 …
我正在尝试将从服务器生成的PDF显示在我的Angular 2 RC 5项目中的视图上.现在,ASPNETCORE服务器将对象作为'application/pdf'返回,Angular客户端正在尝试将响应解析为blob.但是,我在客户端收到以下错误:
Error: The request body isn't either a blob or an array buffer
我用来调用PDF服务器的代码基本上是:
getHeaders() : Headers {
var headers = new Headers({
'responseType': 'application/blob'
});
return headers;
}
getBlob() {
return this.http.get(uri, new RequestOptions({headers: this.getHeaders()}, body: "" }))
.map(response => (<Response>response).blob());
}
Run Code Online (Sandbox Code Playgroud) 每当我尝试添加github文件的链接时,我都会注意到这一点.您可以使用blob以下命令添加链接:
https://github.com/facebook/pop/blob/master/Podfile
如果您将blob更改为tree以下内容,则会出现相同的文档:
https://github.com/facebook/pop/tree/master/Podfile
有什么不同?每当我想在文档中为后代添加链接时,我更喜欢哪一个?
我blob:https://www.facebook.com/c7e5a634-2343-4464-a03e-4a1987301ca1在facebook的私人团体中找到了视频源,我真的无法通过输入网址下载视频,也无法解码.有没有办法解码这个?
<video height="274" width="476" preload="auto" style="" class="_ox1 _21y0 _1_d1" data-video-width="476" data-video-height="274" data-original-aspect-ratio="1.7387058423913" id="u_0_27" src="blob:https://www.facebook.com/dc89feae-5b46-4103-8ee9-da7d7630ca94"></video>
Run Code Online (Sandbox Code Playgroud) blob ×10
javascript ×4
pdf ×3
activerecord ×1
angular ×1
angularjs ×1
asp.net-core ×1
axios ×1
data-uri ×1
decode ×1
exif ×1
facebook ×1
fileapi ×1
git ×1
github ×1
html5 ×1
image ×1
json ×1
laravel ×1
logging ×1
mysql ×1
php ×1
terminology ×1
text ×1
tree ×1
typed-arrays ×1
upload ×1
vue.js ×1