Firebase规则与博尔特不允许写新博客帖子

时间:2016-02-23 10:30:06

标签: firebase firebase-security firebase-authentication

我希望使用Firebase创建一个博客。

我的规则是:

type Post {
    title: String,
    timestamp: Number,
    content: String
}

path / {
    write() {false}
    read() {true}

    /posts/{post} is Post {
        write() {isAdmin()}
    }
}

isAdmin() {auth != null && auth.uid == 'xxx-xxx-xxx-xxx-xxx'}

阅读帖子有用。但是当我想发布一个时,它会抛出一个permission_denied

我已成功登录authWithPassword方法并提交了帖子。

firebase.authWithPassword({email: 'myEmail@email.com', password: 'myPass'}).then(function(authData) {
  if (authData) {
    firebase.child('/articles').push().set(json);
  }
});

其中json等于

{
  'title': 'My title',
  'timestamp': 89430867,
  'content': 'My Content'
}

我如何解决这个错误?

1 个答案:

答案 0 :(得分:0)

最后,

我尝试从Firebase提供的模拟器中提交帖子。有效。所以规则很好。

我决定比较websockets'我的网站的框架,以及模拟器的框架。

我看到我在代码中犯了一个错误。我试图发送一个字符串而不是一个对象。