如何防止 Firebase 上的匿名密钥?
How to prevent anonymous keys on Firebase?
我正在平台上做一个聊天项目Raspberry PI 3、Openelec OS.
正在尝试写入数据库并获取不需要的匿名密钥。
用黄色标记的不需要的密钥。 Movie2
它的键和值是想要的结果,但我是手动制作的。
我只问如何防止这个匿名随机密钥存在以及如何用其他密钥替换它? (字符串,例如电影名称)
这是我的代码:
url = 'https://chat-example-97c62.firebaseio.com/Movie1.json'
postdata = {
'date': str(time.asctime( time.localtime(time.time()) )),
'temp': str("Hello from Kodi")
}
req = urllib2.Request(url)
req.add_header('Content-Type','application/json')
data = json.dumps(postdata)
谢谢。
当你向Firebase发送POST请求时,它会自动生成一个Key(Anonymous Key),如果你想使用自己的key需要使用PATCH请求,这是Python 3:
def update_entry(user, message):
my_data = dict()
my_data["user"] = user
my_data["message"] = message
json_data = json.dumps(my_data).encode()
request = urllib.requests.Request("https://<YOUR-PROJECT-ID>.firebaseio.com/movies/<REPLACE_THIS_WITH_YOUR_DESIRED_KEY>.json", data=json_data, method="PATCH")
try:
loader = urllib.request.urlopen(request)
except urllib.error.URLError as e:
message = json.loads(e.read())
print(message["error"])
else:
print(loader.read())
我正在平台上做一个聊天项目Raspberry PI 3、Openelec OS.
正在尝试写入数据库并获取不需要的匿名密钥。
用黄色标记的不需要的密钥。 Movie2
它的键和值是想要的结果,但我是手动制作的。
我只问如何防止这个匿名随机密钥存在以及如何用其他密钥替换它? (字符串,例如电影名称)
这是我的代码:
url = 'https://chat-example-97c62.firebaseio.com/Movie1.json'
postdata = {
'date': str(time.asctime( time.localtime(time.time()) )),
'temp': str("Hello from Kodi")
}
req = urllib2.Request(url)
req.add_header('Content-Type','application/json')
data = json.dumps(postdata)
谢谢。
当你向Firebase发送POST请求时,它会自动生成一个Key(Anonymous Key),如果你想使用自己的key需要使用PATCH请求,这是Python 3:
def update_entry(user, message):
my_data = dict()
my_data["user"] = user
my_data["message"] = message
json_data = json.dumps(my_data).encode()
request = urllib.requests.Request("https://<YOUR-PROJECT-ID>.firebaseio.com/movies/<REPLACE_THIS_WITH_YOUR_DESIRED_KEY>.json", data=json_data, method="PATCH")
try:
loader = urllib.request.urlopen(request)
except urllib.error.URLError as e:
message = json.loads(e.read())
print(message["error"])
else:
print(loader.read())