【问题标题】:Metadata storage path encoded 2 times from azure blob storage从 azure blob 存储中编码 2 次的元数据存储路径
【发布时间】:2019-11-20 02:27:29
【问题描述】:

我有一个 React 项目,它也使用 azure 搜索来管理 azure blob 存储中的文件。在我将metadata_storage_path 属性编码为base64 之前,我可以通过使用atob(metadata_storage_path.slice(0, -1)) 对其进行解码来读取它。现在我删除了 Azure 搜索以添加一些新内容。但现在我得到了 metadata_storage_path 编码 2 次。

我得到一个看起来像常规 base64 字符串的字符串:

Qhhweufineiurfheurnfuierhfn...等等

当我解码它时,我得到一个字符串,每个字母之间都有空格

A K T I G H A L J S H S...等等

如果我删除所有空格并对输出进行解码,我将获得文件的有效路径。 是否有一些奇怪的设置是我不小心启用的?

我之前遇到过同样的问题,但我重新创建了几次 Azure 搜索功能,然后它才开始工作。

【问题讨论】:

标签: azure azure-blob-storage azure-cognitive-search


【解决方案1】:

不,这可能不是您的错,而是用户界面导致的我们这边的缺陷。如果与 Azure 搜索团队中的某个人交谈,您可以使用 547271 作为跟踪项目编号。 要解决此问题,您需要:

  • 使用 POSTMAN 等工具编辑您的索引器(删除旧的编码属性)
  • 删除并重新创建您的索引

【讨论】:

  • 您的链接需要授权才能打开。但这确实解释了为什么它在我猜想之前就开始起作用了,如果现在这是正确的,那就会说
  • 我们已经部署了一个修复程序,现在它已经上线了。
【解决方案2】:

听起来您同时拥有base64Encode field mapping function 和旧索引器参数base64EncodeKeys。将索引器参数base64EncodeKeys 设置为false 更新您的索引器应该可以去掉额外的编码层。

legacy encoding 参数使用 UTF16 编码,它在 ASCII 字符之间提供了一个额外的 NUL 字节。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-09-16
    • 2019-09-16
    • 2018-12-24
    • 1970-01-01
    • 2021-10-31
    • 2015-12-01
    • 2018-01-11
    • 2020-11-20
    相关资源
    最近更新 更多