Node.js 安全地从(node-express-mongodb)到angular 4获取db结果

Node.js 安全地从(node-express-mongodb)到angular 4获取db结果,node.js,mongodb,angular,mean-stack,Node.js,Mongodb,Angular,Mean Stack,建立连接时不存在问题,包括节点和角度。数据库结果也很好。这是我现在面临的唯一问题 我有两个不同的端口,但服务器相同 0.0.0.0:3000-用于节点 0.0.0.0:4200-用于角度 当我从angular向节点(mongodb)发出api请求时,当我输入时,它在浏览器控制台以及网络选项卡中可见。我怎样才能克服这个问题?你不能。Angular是一个SPA,一个在前端工作的框架。这意味着一旦应用程序的文件下载到浏览器内存中,它就会启动应用程序的实例 之后,当您向API或任何其他URL发出请求时,

建立连接时不存在问题,包括节点和角度。数据库结果也很好。这是我现在面临的唯一问题

我有两个不同的端口,但服务器相同

0.0.0.0:3000-用于节点
0.0.0.0:4200-用于角度


当我从angular向节点(mongodb)发出api请求时,当我输入时,它在浏览器控制台以及网络选项卡中可见。我怎样才能克服这个问题?

你不能。Angular是一个SPA,一个在前端工作的框架。这意味着一旦应用程序的文件下载到浏览器内存中,它就会启动应用程序的实例

之后,当您向API或任何其他URL发出请求时,浏览器的行为应为:发出请求。你没有真正的方法来阻止这一切


这并不意味着请求不安全。在控制台或网络选项卡中查看应用程序发出的请求并不意味着它不安全

您可以使用nginx作为代理服务器来重定向您的所有REST调用以克服此问题。
有关详细使用信息,请访问此处

Hi,假设我需要用户的详细信息,包括用户id&触发angular的请求,在“网络”选项卡中,结果可见。比如{u id':234234}:(我不知道这有什么问题。打开任何网站,甚至FB或推特,打开网络标签并使用平台。你会发现你可以得到你的浏览器和服务器上的所有请求和数据交换。这是正常行为。如果你想使这些数据不可读,那么你应该考虑加密数据和IM。将解密功能添加到你的应用程序中。这样,你的用户将无法看到清晰的数据。但这并不意味着无法访问。再说一遍:看到与浏览器的通信是正常行为。这是我第一次使用mean stack。所以我有点困惑。例如,在codeigniter框架中,如果我们控制器中db的结果(后端)在我们处理前端视图文件中的任何类似foreach的语句之前,用户不会看到它。但在这里它是完全不同的。无论如何,它可能是您所说的性质:)所以我们必须尽可能减少私有数据,如密码和其他重要数据,对吗?