如何在Azure搜索中的Metadata_storage_path字段上查询搜索

时间:2019-08-17 14:53:11

标签: azure azure-cognitive-search azure-search-.net-sdk

我知道metadata_storage_path是使用Base-64编码的,我们可以通过从Azure搜索中检索结果来在代码中对其进行解密

我的问题是我希望Azure搜索查询metadata_storage_path中存在的路径

例如假设const cardComponent = robots && robots.length && robots.map((user,i) => { return <Card name = {user.name} id ={user.id} email = {user.email} /> }) 的值如下 metadata_storage_path<baseurl>/india/health的解密形式,我想用印度文字搜索以获取相关文件和数据

如何在路径上执行查询??

2 个答案:

答案 0 :(得分:1)

上一个答案的问题是metadata_storage_name只是一个blob名称(不是整个路径的 ),因此不能保证是唯一的,因此它不是安全的主键。

一种更安全的方法是使用field mappingmetadata_storage_path重命名为新字段(例如,“文件名”)。该字段不会被编码,因此检索起来很方便,而编码后的metadata_storage_path仍将用于(安全唯一)主键。

答案 1 :(得分:0)

默认情况下,如果创建天蓝色存储的索引,则将在列metadata_storage_path上创建索引,这就是它被编码的原因,避免metadata_storage_path解码的最简单方法是将主键切换到其他主要为metadata_storage_name的名称。 / p>

将其更改为某些内容后,meta_storage_path将以纯文本格式提供

希望这很有用。