Javascript 任何人都可以在无服务器的js应用程序中使用端点URL吗?

Javascript 任何人都可以在无服务器的js应用程序中使用端点URL吗?,javascript,api,security,Javascript,Api,Security,在JavaScript中,我有这样一种安全恐惧:向客户机公开代码,对我来说,意味着公开您正在调用的所有URL。假设我在我的无服务器应用程序中有一个端点URL,当我需要在特定条件后向特定用户添加点时,我会调用该URL。现在,当代码显示给用户时,用户可以访问URL。在这种情况下,用户是否可以只查看URL,转到Postman或Dominism之类的API客户端,然后在不满足条件的情况下对URL发出GET/POST请求 另外,假设有一个API密钥是敏感的,不能向客户端公开。在本例中,我将把它放在服务器端

在JavaScript中,我有这样一种安全恐惧:向客户机公开代码,对我来说,意味着公开您正在调用的所有URL。假设我在我的无服务器应用程序中有一个端点URL,当我需要在特定条件后向特定用户添加点时,我会调用该URL。现在,当代码显示给用户时,用户可以访问URL。在这种情况下,用户是否可以只查看URL,转到Postman或Dominism之类的API客户端,然后在不满足条件的情况下对URL发出GET/POST请求

另外,假设有一个API密钥是敏感的,不能向客户端公开。在本例中,我将把它放在服务器端,然后从客户机向服务器发出请求,以使用敏感密钥执行调用,而不仅仅是将密钥公开给客户机。在这种情况下,用户可以不使用URL并向服务器发出GET/POST请求吗


任何开发安全JS应用程序的一般链接/提示也将不胜感激。

您应该始终注意后端(端点)的安全。无法隐藏前端将调用的URL。当您创建API时,您应该认为唯一的用户是最好的黑客,他的目标是破解您的后端。最小的漏洞造成最大的损害。

如果有端点URL,它怎么可能没有服务器?URL指向一个服务器。我认为这是一个更好的回答这个问题的地方。一般的规则是,任何需要保护不被用户看到的东西都必须放在服务器上。客户端只发送用户操作,服务器决定它们如何影响分数。如果存在必须隐藏的API密钥,服务器将调用其他API。可能是OP指的是“无服务器javascript”模型。然而,我不认为这会改变你的评论@Barmart的有效性。服务器必须验证所有输入。例如,如果你正在实施一个纸牌游戏,服务器会记住给每个玩家发了哪些牌,并且不会让他们玩一张没有发过的牌。因此,如果我的前端URL应该调用后端,说调用受保护的URL,我基本上可以让用户简单地指示后端?