Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript firebase上的用户身份验证,显示受限内容_Javascript_Jquery_Authentication_Firebase - Fatal编程技术网

Javascript firebase上的用户身份验证,显示受限内容

Javascript firebase上的用户身份验证,显示受限内容,javascript,jquery,authentication,firebase,Javascript,Jquery,Authentication,Firebase,我正在制作这个网站,上面有简单的图片库。我正在尝试添加一个简单的用户身份验证,这样只有一个人可以添加和删除图片库中的图像。我知道使用PHP可能很简单,但我从未使用过它,所以我不知道它对我来说到底有多简单?我发现我可以在firebase中进行用户身份验证,所以我想试试。到目前为止,我有以下代码: var ref = new Firebase("https://test.firebaseIO.com"); var authenticate = function(){ ref.authWith

我正在制作这个网站,上面有简单的图片库。我正在尝试添加一个简单的用户身份验证,这样只有一个人可以添加和删除图片库中的图像。我知道使用PHP可能很简单,但我从未使用过它,所以我不知道它对我来说到底有多简单?我发现我可以在firebase中进行用户身份验证,所以我想试试。到目前为止,我有以下代码:

var ref = new Firebase("https://test.firebaseIO.com");
var authenticate = function(){
    ref.authWithPassword({
        email: $(".email").val(),
        password: $(".password").val()
    }, function(error, authData) {
        if (error) {
            console.log("Something went wrong", error);
        } else {
            console.log("Authenticated with payload", authData);

        }
    });
}

$(".login_button").click(function(){
    authenticate();
});
我正在将authData作为控制台日志返回,以便身份验证工作正常。现在我想知道。如何使用此选项仅向经过身份验证的用户显示内容?或者像这样的身份验证是否可能


感谢您的耐心。

虽然这是一个广泛的问题,详细的答案在Firebase网站上,但这里有一个广泛的答案

一般来说,Firebase有两个部分来保护您的数据

1) Authenticating the user (via email/pw, Facebook integration etc)
2) Once authenticated, controlling what that authenticated user can access via Rules.
规则就是你想要的答案

Firebase数据最初是完全开放的;如果使用Firebase dashboard创建新的应用程序空间,则任何经过身份验证或未经身份验证的用户都可以访问该数据

一旦您设置了一组规则,那么就定义了什么以及谁可以访问相同的数据

这里有一条规则可以确保读/写访问权限仅授予经过身份验证的用户

{
  rules: {
    ".read": "auth != null",
    ".write": "auth != null"
  }
}

这与您的身份验证相结合,只允许经过身份验证的用户访问您的数据;未经验证的用户将无法对其进行读写。

这是一个非常广泛的问题,因此我建议您先尝试一些东西,如果遇到问题,再回来。您最可能遇到的问题是Firebase规则无法用于筛选数据。看看这个答案: