首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >权限被拒绝在Flutter中的Firebase

权限被拒绝在Flutter中的Firebase
EN

Stack Overflow用户
提问于 2019-02-19 21:03:48
回答 1查看 2.5K关注 0票数 0

我试图使用来自firebase应用程序的文本,每个文本的页面视图,但是它给了我这个被拒绝的权限日志,我也尝试过使用FutureBuilder,但是它给出了相同的错误。

我的错误日志:

W/Firestore(28023):(0.6.6-dev) Firestore:侦听查询(Teste)失败:状态{code=PERMISSION_DENIED,description=Missing或权限不足。cause=null} I/System.out(28023):cause=null PERMISSION_DENIED:缺失或权限不足。W/Firestore(28023):(0.6.6-dev) Firestore:侦听查询(课程)失败:状态{code=PERMISSION_DENIED,description=Missing或权限不足。,cause=null} I/System.out(28023):cause=null PERMISSION_DENIED:缺少或不足权限。

代码:

代码语言:javascript
复制
    class LessonPage extends StatelessWidget {
  final LessonData lessonData;

  LessonPage(this.lessonData);

  @override
  Widget build(BuildContext context) {

    return StreamBuilder<QuerySnapshot>(
      stream: Firestore.instance.collection("lessons").snapshots(),
      builder: (context, snapshot) {
        if (snapshot.hasError) {
          return Center(
            child: Text(
              "An Has Error Occurred",
              style: TextStyle(color: Colors.red, fontSize: 24.0),
            ),
          );
        }
        switch (snapshot.connectionState) {
          case ConnectionState.waiting:
            return Center(
              child: CircularProgressIndicator(),
            );
          case ConnectionState.none:
            {
              return Center(
                child: Text(
                  "Without Connection!",
                  style: TextStyle(color: Colors.red, fontSize: 24.0),
                ),
              );
            }
          case ConnectionState.done:
          case ConnectionState.active:

          default:
          return PageView.builder(
            itemBuilder: (context, index) {
              return LessonWidget(
                  LessonData.fromDocument(snapshot.data.documents[index]));
            },
            itemCount: snapshot.data.documents.length,
          );
        }
      },
    );
  }
}

LessonWidget类(我正在从firebase获取教训文本文档快照,并输入文本):

代码语言:javascript
复制
    class LessonWidget extends StatelessWidget {
  final LessonData lessonData;

  LessonWidget(this.lessonData);

  @override
  Widget build(BuildContext context) {

    return ListView(
      children: <Widget>[
        Text("${lessonData.text == null ? lessonData.text : "" }", style:
        TextStyle(color: Colors.black54, fontSize: 30.0),),
        SizedBox(height: 18.0,),
        TextField(
          decoration: InputDecoration(
              hintText: "Escreva a sua resposta aqui"
          ),
          autofocus: true,
        ),
        SizedBox(height: 10.0,),
        RaisedButton(onPressed: () {

        },
          color: Theme
              .of(context)
              .primaryColor,
          child: Text("Continuar"),)
      ],
    );

  }
}
EN

回答 1

Stack Overflow用户

发布于 2021-05-03 12:17:56

PERMISSION_DENIED错误是由于Firestore上的安全规则设置造成的。默认情况下,在Firestore上设置的规则要求对用户进行访问身份验证。我建议重新查看在您的节点上设置的规则以解决此问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54774877

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档