标签: blob

如何从 MySQL 中的 BLOB 列中提取十六进制值

我正在尝试从以单精度 32 位十六进制编写的BLOB 列中提取浮点值。为了更详细地说明,我在下面构建了类似于我正在使用的 Mysql-db 的示例:即,一个包含值 '42f00000' 的 BLOB 列的表。目标是拥有一个从中提取值“120”的函数。

示例数据集将是:

CREATE TABLE MyTable (FirstColumn BLOB);

INSERT INTO MyTable (FirstColumn) VALUES (0x42f00000); #Representing value 120 in single-precision 32bit Hex

SELECT *
FROM MyTable;
Run Code Online (Sandbox Code Playgroud)

后者 'SELECT *' 的输出是这样的: 在此处输入图片说明

我很难编写一个可以为整个列执行此操作的函数。我尝试了我在互联网上找到的但没有成功:即,

SELECT UNHEX(FirstColumn)
FROM MyTable;
## NULL-result

SELECT CONV(FirstColumn, 10,16)
FROM MyTable;
## 0 as result
Run Code Online (Sandbox Code Playgroud)

希望有人有类似的经历吗?

mysql hex blob extract

1
推荐指数
1
解决办法
8314
查看次数

如何通过 Google Apps Script Web App 将 jpg 或 png 图像转换为 Blob?

我想将 html 表单中的图像通过 http 发布到谷歌应用程序脚本网络应用程序,然后将该图像添加到谷歌驱动器。

我的应用程序脚本如下。

function doPost(e){
  var date = new Date();
  var timestamp = date.toString()
  var adress = e.parameter.adress;
  var cost = e.parameter.cost;
  var item = e.parameter.item;
  var check = e.parameter.image;

  //add file to drive
  var destination_id = "some ID"
  var destination = DriveApp.getFolderById(destination_id);
  destination.createFile(check);
};
Run Code Online (Sandbox Code Playgroud)

当我执行时,它返回一个错误; cannot find method: createFile(String)

我认为这是因为“检查”是一个字符串,我想将提交的图像转换为Blob。

我怎样才能做到这一点?

blob web-applications google-apps-script

1
推荐指数
1
解决办法
4015
查看次数

通过将 URL 图像转换为二进制来解决 CORS 问题

我从 API 中提取了一些数据,其中一个属性是图像 url。所以我把那个 url 放在 . 但是,我需要从 url 中获取该图像,将其转换为二进制,以便我可以将其发送到要存储的数据库,以二进制形式而不仅仅是一个 url。

我尝试了两种方法,一种使用 FileReader 转换为 blob,另一种使用写入 a 并转换为 blob。但是,使用这两种方法,来自 URL 的图像的主机给了我 CORS 拒绝,因为请求不是来自同一个域,我理解。我无法控制在另一台服务器上设置标头,但我确实需要将 url 图像转换为二进制。反正有没有在我自己的服务器上进行转换的情况下做到这一点?

javascript blob image cors

1
推荐指数
1
解决办法
2046
查看次数

从服务器获取文件时 JavaScript Blob 编码错误

FileStreamResult在 SPA 网站(.NET Core 2、SPA React 模板)中使用来自 C# 的 a,我从我的端点请求一个文件,这会在 C# 中触发此响应:

var file = await _docService.GetFileAsync(token.UserName, instCode.Trim()
.ToUpper(), fileSeqNo);
string contentType = MimeUtility.GetMimeMapping(file.FileName);
var result = new FileStreamResult(file.File, contentType);
var contentDisposition = new ContentDispositionHeaderValue("attachment");
Response.Headers[HeaderNames.ContentDisposition] = 
contentDisposition.ToString();
return result;
Run Code Online (Sandbox Code Playgroud)

返回的响应是使用处理的msSaveBlob(特别是对于 MS,但即使我使用createObjectURL不同的浏览器,这也是一个问题(是的,我已经尝试了多种解决方案,但似乎都没有工作)。这是我用来的代码发送请求,并FileStreamResult从服务器接收 PDF 。

var file = await _docService.GetFileAsync(token.UserName, instCode.Trim()
.ToUpper(), fileSeqNo);
string contentType = MimeUtility.GetMimeMapping(file.FileName);
var result = new FileStreamResult(file.File, contentType);
var contentDisposition = new ContentDispositionHeaderValue("attachment");
Response.Headers[HeaderNames.ContentDisposition] = 
contentDisposition.ToString();
return result;
Run Code Online (Sandbox Code Playgroud)

问题是我得到的返回的 …

javascript pdf blob filestreamresult

1
推荐指数
1
解决办法
4075
查看次数

BLOB URL 在 Safari 中不起作用

我正在使用 D3 生成图形并希望将其导出为图像,该图像在除 Safari 之外的所有浏览器中都可以正常工作。该代码生成一个 D3 SVG,用于 BLOB,用作图像,添加到可以导出的画布中。

var blob = new Blob([source], { type: 'image/svg+xml;charset=utf-8' });
var url = window.URL.createObjectURL(blob);

// Put the svg into an image tag so that the Canvas element can read it in.
var img = d3.select('body').append('img')
 .attr('width', width)
 .attr('height', height)
 .node();

img.onload = function(){
  // Some method which is never called
}
img.src = url;
Run Code Online (Sandbox Code Playgroud)

在 Safari 中,从不触发 onload 函数,图像元素也不显示图像。我记录了 blob 元素和 URL,两者看起来都很好(如果我在 safari 中手动打开 blob URL,它会下载 SVG 代码)。但它不会将其显示为图像,因此我无法导出它。

我注意到的一点是,当我检查 img 元素并在新选项卡中打开 src 时,它会在 …

javascript safari url blob

1
推荐指数
1
解决办法
7563
查看次数

如何将 FetchAPI 解析的 Blob 结果转换为 Base64

有这个module.exports从 API 端点获取图像的文件。然后将 API 结果解析为 blob。解析后的 Blob 对象如下所示:

Blob {
  [Symbol(type)]: 'image/jpeg',
  [Symbol(buffer)]:
   <Buffer ff d8 ff db 00 43 00 08 06 06 07 06 05 08 07 07 07 09 09 08 0a 0c 14
0d 0c 0b 0b 0c 19 12 13 0f 14 1d 1a 1f 1e 1d 1a 1c 1c 20 24 2e 27 20 22 2c 23 1c
 ... > }
Run Code Online (Sandbox Code Playgroud)

这是代码:

// Pre Configuration
const fetch = require('node-fetch')

module.exports = async …
Run Code Online (Sandbox Code Playgroud)

javascript base64 blob image node.js

1
推荐指数
1
解决办法
2932
查看次数

将视频源更改为 blob / ObjectURL

我想隐藏视频源的属性。因此,我想将视频源标签的 src 属性转换为 objectURL。遗憾的是它不起作用。

我已经试过了

function display(vid){
    var video = document.getElementById("video");
    video.src = window.URL.createObjectURL(vid);
}

display('video.mp4');
Run Code Online (Sandbox Code Playgroud)

(此处提供:显示来自 Blob Javascript 的视频

那行不通,Stack 已经有 5 年历史了。

HTML 看起来像这样

<video id="video">
   <source type="video/mp4" src="video.mp4">
</video>
Run Code Online (Sandbox Code Playgroud)

html javascript video blob

1
推荐指数
1
解决办法
2964
查看次数

在没有 FileReader 的 NodeJS 中 Blob 到 Base64

我目前有一个类型为“image/jpeg”的 blob,我需要将其转换为 base64 字符串。我所有的代码都在一个使用 Nodejs 的独立 javascript 文件中,并且没有与任何 html 文件连接。我研究过的将 blob 转换为 base64 的每种方法都涉及使用 FileReader 类,该类要求 javascript 位于 html 中,因此这是不可能的。我发现的唯一其他解决方法是使用这行代码将 blob 转换为缓冲区,然后转换为 base64。

    base64 = new Buffer( blob, 'binary').toString('base64');
Run Code Online (Sandbox Code Playgroud)

但这只会返回错误:第一个参数必须是字符串、Buffer、ArrayBuffer、Array 或类似数组的对象。

我很难过……有什么建议吗?

javascript base64 buffer blob node.js

1
推荐指数
2
解决办法
4529
查看次数

容器的 Azure SAS 令牌引发“无效签名大小”错误

我正在尝试从 Azure 上的容器中列出和下载 blob。当我尝试使用存储帐户访问密钥这样做时,它工作得非常好。但是,在使用 SAS 令牌时失败。我使用以下 PowerShell 脚本生成了 SAS 令牌:

    $storageContext = New-AzureStorageContext -StorageAccountName "myAccount" -StorageAccountKey "<account key>"
$permission = "rwdl"
$sasToken = New-AzureStorageContainerSASToken  -Name "myContainer" -Policy "testPolicy" -Context $storageContext >>sastoken.txt
"
Run Code Online (Sandbox Code Playgroud)

我得到以下结果:

?sv=2017-04-17&sr=c&si=testPolicy&sig=dbS680%2FXgPp4o%2BQCCzpYzGZszCnDHVjCkdHZRf6KDeg%3D
Run Code Online (Sandbox Code Playgroud)

我将资源 URI 附加到 sas 令牌以获取:

https://myAccount.blob.core.windows.net/myContainer?sv=2017-04-17&sr=c&si=testPolicy&sig=dbS680%2FXgPp4o%2BQCCzpYzGZszCnDHVjCkdHZRf6KDeg%3D
Run Code Online (Sandbox Code Playgroud)

并运行以下 CLI 命令:

az storage blob list --container-name myContainer --account-name myAccount --auth-mode key --debug --sas-token "https://myAccount.blob.core.windows.net/myContainer?sv=2017-04-17&sr=c&si=testPolicy&sig=dbS680%2FXgPp4o%2BQCCzpYzGZszCnDHVjCkdHZRf6KDeg%3D" >> bloblist.txt
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

azure.multiapi.storage.v2018_03_28.common.storageclient :Client-Request-ID=0f7a 7762-3729-11e9-8b32-ffc4c9592d0a 重试策略不允许重试:服务器-时间戳=星期六,2000年2月25日30 GMT,Server-Request-ID=21f07a6a-f01e-00e9-32 35-cb7d5c000000,HTTP 状态代码=403,异常=服务器无法验证请求。确保 Authorization 标头的值正确形成,包括签名。错误代码:AuthenticationFailedAuthenticationFailed服务器无法对请求进行身份验证。确保 Authorization 标头的值正确形成,包括签名。RequestId:21f07a6a-f01e-00e9-3235-cb7d5c000000Time :2019-02-23T05:08:30.7149353Z Signature size is invalid

您没有执行此操作所需的权限。根据您的操作,您可能需要被分配以下角色之一:

"Storage …
Run Code Online (Sandbox Code Playgroud)

containers blob list azure

1
推荐指数
1
解决办法
1720
查看次数

将 PostgreSQL text/bytea 列迁移到大对象?

我有一个表(10k 行),在text列中存储大值。当前最大的未压缩大小为 417 MB(烘烤后为 85 MB)。此设计中的缺陷是无法传输这些值(例如通过 JDBC) - 使用此列的任何内容都必须将整个内容读入内存。

是否有任何工具或快捷方式可用于将此列迁移到大型对象?最大限度地减少所需的工作磁盘和内存。

lo_compat_privileges如果这有什么区别的话我会使用。

postgresql blob psql jdbc-postgres

1
推荐指数
1
解决办法
1466
查看次数