firebase - Firebase Realtime equalTo 不能使用像“+123”这样的字符串
问题描述
我有一个问题,找不到答案。这是我的示例 firebase 数据库,在“mobile”上有一个索引:
test
A
mobile : "+1234567"
B
mobile : "+2345678"
现在我想用 mobile = "+1234567" 查询所有节点
test.json?orderBy="mobile"&equalTo="+1234567"
returns : { }
但
test.json?orderBy="mobile"&startAt="+1234567"
returns :
{
"A" : {
"mobile" : "+1234567"
},
"B" : {
"mobile" : "+2345678"
}
}
和
test.json?orderBy="mobile"&startAt="+1234567"&endAt="+1234567"
returns : { }
怎么了 ?如果我删除所有“+”号(在数据库+请求中)它工作正常?!
解决方案
您需要对字符进行URL 编码+
,这意味着将其显示为%2B
.
所以:
test.json?orderBy="mobile"&startAt="+1234567"&endAt="%2B1234567"
在这里查看我的工作示例:https ://stackoverflow.firebaseio.com/65924783.json?orderBy=%22mobile%22&equalTo=%22%2B1234567%22
推荐阅读
- stored-procedures - 是否可以在 db2 的存储过程中添加新列?
- css - :active 对于父 div 类不适用于子 div
- sql - 如何以 varchar 格式格式化日期存储
- swift - 快速格式化高度
- sql-server - 如何使用 ssis 将平面文件中的字符串 0000-00-00 转换为数据库中的日期时间
- enterprise-architect - 如何从我的个人资料中隐藏刻板印象标签
- php - 返回成功的 ping 但在发生致命错误之后
- c# - C# WPF 在套接字发送和接收数据时显示加载屏幕 C#
- java - 生成回文词
- vb.net - Sage200c SDK 在 Web 表单中崩溃