Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.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 在AngularJS中验证用户,无需任何后端调用或数据库_Javascript_Angularjs_Validation_Single Page Application - Fatal编程技术网

Javascript 在AngularJS中验证用户,无需任何后端调用或数据库

Javascript 在AngularJS中验证用户,无需任何后端调用或数据库,javascript,angularjs,validation,single-page-application,Javascript,Angularjs,Validation,Single Page Application,我用AngularJS创建了一个静态网站。我没有使用任何后端调用或数据库。但我希望有一个登录页面,用户在其中输入密码(与站点用户相同的密码仅供内部使用),如果密码正确,则我将用户带到主页,否则将他们带回到登录屏幕。我正在使用ApacheWeb服务器。在AngularJS中,有没有一种方法可以在没有Tomcat/Database/Cookie等的情况下实现安全的验证/身份验证 注意:我不想在任何.js文件中存储用户名和密码,使其暴露给任何用户 谢谢没有服务器,就没有充分的证据来证明这一点。但是,您

我用AngularJS创建了一个静态网站。我没有使用任何后端调用或数据库。但我希望有一个登录页面,用户在其中输入密码(与站点用户相同的密码仅供内部使用),如果密码正确,则我将用户带到主页,否则将他们带回到登录屏幕。我正在使用ApacheWeb服务器。在AngularJS中,有没有一种方法可以在没有Tomcat/Database/Cookie等的情况下实现安全的验证/身份验证

注意:我不想在任何.js文件中存储用户名和密码,使其暴露给任何用户


谢谢

没有服务器,就没有充分的证据来证明这一点。但是,您可以加密密码和用户名,然后将它们存储在cookie中。有很多javascript库可以实现这一点。 示例教程:


这样就不会向用户公开。

没有服务器,就没有充分的证据来证明这一点。但是,您可以加密密码和用户名,然后将它们存储在cookie中。有很多javascript库可以实现这一点。 示例教程:


这样它就不会暴露给用户。

真实世界相当于只使用JavaScript进行输入验证


抱歉,讽刺一下。

现实世界相当于只使用#JavaScript进行输入验证


抱歉,讽刺一下。

一个选项是将HTTP基本身份验证添加到您的应用程序中。如果您使用Aerobatic托管应用程序,您可以在package.json中进行类似配置(请注意,您可以选择将auth添加到特定目录):

免责声明:我是特技飞行的联合创始人

{
  "_aerobatic": {
    "router": [
      {
        "module": "basic-auth",
        "path": "/protected",
        "options": {
          "username": "$BASIC_AUTH_USERNAME",
          "password": "$BASIC_AUTH_PASSWORD",
          "loginPage": "login.html",
          "maxFailedLogins": 5,
          "failedLoginPeriod": 600
        }
      },
      {
        "module": "webpage"
      },
      {
        "module": "custom-errors",
        "errors": {
          "403": "403.html"
        }
      }
    ]
  }
}

一个选项是将HTTP基本身份验证添加到应用程序中。如果您使用Aerobatic托管应用程序,您可以在package.json中进行类似配置(请注意,您可以选择将auth添加到特定目录):

免责声明:我是特技飞行的联合创始人

{
  "_aerobatic": {
    "router": [
      {
        "module": "basic-auth",
        "path": "/protected",
        "options": {
          "username": "$BASIC_AUTH_USERNAME",
          "password": "$BASIC_AUTH_PASSWORD",
          "loginPage": "login.html",
          "maxFailedLogins": 5,
          "failedLoginPeriod": 600
        }
      },
      {
        "module": "webpage"
      },
      {
        "module": "custom-errors",
        "errors": {
          "403": "403.html"
        }
      }
    ]
  }
}

在浏览器中无法严格执行授权。无论是您自己的服务器还是第三方数据服务,都必须在某些服务器上进行授权。在浏览器中无法严格执行授权。它必须在某些服务器上完成,无论是您自己的还是第三方数据服务加密密钥必须存储在客户端否?有没有不使用cookies的方法?我根本看不到在客户端执行此操作的完美方法。加密密钥必须存储在客户端否?有没有不使用cookies的方法?在客户端,我看不到一个完美的方法。如果你把手机翻过来,只能拨打611;如果你把手机翻过来,只能拨打611