如何使用Graph API在Azure Cosmos DB中正确编码字符



我在将数据存储在azure cosmos db graph中时,对某些字符的编码有问题。

例如,如果我执行这样的查询以添加带有名称stéphane的新顶点:

g.addV('test-encoding').property('id','some id').property('name','Stéphane')

它以stã©phane 的形式显示在Azure Portal的数据资源管理器中。如果我尝试从Gremlin命令行查询顶点,我也不会获得返回的名称的正确值。

因此,似乎我在cosmos db中编码数据的编码有问题。

在另一个问题中,建议在创建顶点之前对数据进行编码,然后在需要读取时URL对其进行解码。

但是感觉很麻烦,我想知道是否还有其他事情可以用正确的编码来存储字符串?

您的查询正确。属性值实际上正确保存在cosmosdb中(带有正确的口音(。

这是门户数据资源管理器中的一个渲染错误:在查询COSMOSDB时,数据Explorer在包含这两个Bytes UTF-8字符时不会正确地解码响应,并将显示2个不同的字符,而不是一个不同的字符,而不是在Graph UI选项卡以及Data Explorer中的JSON选项卡。在Data Explorer的下一个部署中,修复程序即将进行。

如果您使用的是COSMOSDB SDK或Gremlin控制台,则可以直接查询图形并验证"Stéphane"是否正确存储。

最新更新