如何对未登录的用户隐藏我的大部分JavaScript?
我正在开发一个web应用程序。主要部分将是一个HTTP API和一个使用大量JavaScript的前端 将需要身份验证,因此将有一个用户登录的页面。在这个页面上,前端代码将从用户那里获取凭据,将它们提交到HTTP API,并接收令牌,然后可以使用令牌访问HTTP API的私有部分 实现这一点的简单方法是让登录页面引用所有JavaScript代码,这意味着登录页面将有a)登录所需的JavaScript和b)登录后所需的JavaScript。但是拥有(b)是一个问题。尽管JavaScript将被缩小,但破解程序将能够读取并找到:如何对未登录的用户隐藏我的大部分JavaScript?,javascript,security,frontend,Javascript,Security,Frontend,我正在开发一个web应用程序。主要部分将是一个HTTP API和一个使用大量JavaScript的前端 将需要身份验证,因此将有一个用户登录的页面。在这个页面上,前端代码将从用户那里获取凭据,将它们提交到HTTP API,并接收令牌,然后可以使用令牌访问HTTP API的私有部分 实现这一点的简单方法是让登录页面引用所有JavaScript代码,这意味着登录页面将有a)登录所需的JavaScript和b)登录后所需的JavaScript。但是拥有(b)是一个问题。尽管JavaScript将被缩小
- HTTP端点李>
- 如何验证API的受保护部分李>
- API的受保护部分需要什么样的数据李>
- 以HTML模板和其他静态字符串形式发送给用户的消息
- 用户导航到登录页面,该页面包含最少的JavaScript代码
- 用户输入其凭据
- JavaScript将这些凭证发送到后端并接收cookie
- JavaScript重定向到另一个页面,称之为第2页
- 第2页引用了登录后使用的JavaScript,它存储在一个URL中,该URL包含一个长的加密随机字符串
- (2013年,流星框架)
- (2014年)
希望这能有所帮助。您描述的计划,包括cookie要求,对我来说似乎相当不错。如果您不想重定向到另一个页面,您可以在登录后动态加载脚本,但仍然需要cookie。例如jQuery
$.getScript()
。我同意所有这些听起来都很合理。此外,登录页面上很少有脚本是很常见的,登录后你会被带到包含所有内容的“真实”网站。这是假设您需要身份验证才能浏览任何其他页面,而不是,比如说,该网站的功能是允许未经授权的用户在不登录的情况下仍能查看真实页面。作为一个单独的好处,拥有一个真正简单的登录页面也意味着在更改代码库的其余部分时维护更少。