nosql – Riak键中的特殊字符

前端之家收集整理的这篇文章主要介绍了nosql – Riak键中的特殊字符前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想通过REST将一个带有特殊字符的密钥(在我的情况下为斜线)存储到Riak.

HowTo http://wiki.basho.com/Riak-Search—Querying.html#Fields说:

If your field contains special characters,such as
(‘+’,‘-’,‘/’,‘[’,‘]’,‘(’,‘)’,‘:’ or space),then either surround the
phrase in single quotes,or escape each special character with a
backslash.

但这些领域,而不是关键.
我试图反斜杠,但遗憾的是它不起作用.

我找不到关于这个问题的任何信息.
有人知道如何掩盖钥匙中的特殊字符吗?

示例(不工作):

PUT https://riak:8069/buckets/key/keys/11111\/2

其中键是11111/2

解决方法

这与Riak没有任何关系,而是你需要如何转义URL,因此服务器(包括Riak)不会将正斜杠解释为路径分隔符:

PUT https://riak:8069/buckets/key/keys/11111%2F2

然后,您可以以相同的方式检索它:

GET https://riak:8069/riak/key/11111%2F2

/是使用URL Encoding时/的值 – 如果您的密钥包含在URL中被视为特殊字符的字符,则需要使用密钥.

您可以通过在密钥桶中列出密钥来验证这在Riak中是否正常工作(在测试服务器上 – 不要在生产服务器上执行此操作,因为它非常昂贵):

GET https://riak:8069/riak/key?keys=true

在JSON输出结束时,您会发现:

... "keys":[...,"11111/2",...]}

猜你在找的NoSQL相关文章