我关注如何使用经过身份验证的用户写入数据库的this指南。我已经正确设置了规则,如果所有的写入都是正确的,我可以发布。当我通过oauthToken时,当我按照this指南时,我会得到"无效声明"孩子"在auth标题"。我已经看到了这个结果的其他问题,但我不认为他们做的事与我一样,他们也使用相同的语言。
那么如何正确验证?我可以获得令牌,其他一切都很好。
当前规则集:
{
"rules": {
"location": {
"$user_id": {
".read": all,
".write": "$user_id === auth.uid"
}
}
}
}
我的代码:
private function submitNewData(localId:String, authToken:String):void
{
var data:Object = new Object();
data.location = "w0.0rld";
data.description = "hello";
var request:URLRequest = new URLRequest("https://" + FIREBASE_PROJECT_ID + ".firebaseio.com/location/" + uid + ".json?auth=" + authToken);
request.data = JSON.stringify(data);
request.method = URLRequestMethod.POST;
var loader:URLLoader = new URLLoader();
loader.addEventListener(Event.COMPLETE, entrySent);
loader.load(request);
}
private function entrySent(event:flash.events.Event):void
{
trace(event.currentTarget.data); //Invalid claim 'kid' in auth header
}