通过HTML表单页面将JSON安全发送到服务器

时间:2019-06-07 09:19:33

标签: javascript html json

我有一个带有表单的html页面,该页面正在通过JSON请求与服务器进行通信,例如在加载时(例如为了记住用户的先前答案)以及在按下提交按钮时(例如为了保存他的新答案) 。每个用户都有一个特定的user_id,它作为属性位于网站的url中。我只有HTML页面,CSS和Javascript,这些页面具有一些简单的功能,并且可以接收和发送请求。

问题在于服务器需要 api-key 来进行请求,我需要保持隐藏状态,但是当用户看到源代码时很容易发现它。我希望隐藏此特定行,但是我想如果没有游戏中的任何后端,这是不可能的。

我想知道从这种状态(只是前端,源代码中的每条信息都是完全不安全的)到另一种api键(至少)不在此状态的最简单,最快的方法打开。

我想解决方案是在那部分使用服务器,但是我需要从我的代码到另一个代码的最简单过渡的建议。我尝试使用GWT,因为我对JAVA后端应用程序(而不是GWT)有点熟悉,但似乎是个大麻烦,我需要更改HTML,Javascript和我可能没有的CSS很有用,而且在尝试读取参数时会遇到很多问题。

我知道这不是最好的方法,但是我没有太多的时间使它起作用,所以很抱歉,如果它看起来很懒(我是这种编程的新手),但是我什么都没找到很有帮助,我不能学习2个星期才能开始实施它。

在这方面,node.js(这是Javascript,并且我已经用这种语言实现了请求发送/接收)是否比GWT容易?这样我的敏感数据会安全吗?如果有一个类似的示例,可以将其用于实现,我将不胜感激,因为我还没有找到任何对我的情况特别有用的示例。 预先感谢!

1 个答案:

答案 0 :(得分:1)

NodeJs不是javascript,NodeJs是特定的javascript“解释器”,其目的主要是在服务器端执行。如果您有HTML页面,则可能会将其加载到Web浏览器(客户端)中,而不是加载到NodeJs环境中。

您的网页javascript中所有硬编码的内容都可以从客户端看到,没有办法解决。所以,是的,您需要在某些地方进行一些服务器级的事情。

如果您不希望自己或通过PaaS管理服务器,则可以采用无服务器架构。例如,如果您考虑我最了解的AWS,则可以使用Aws Cognito用户池轻松地将一些用户管理添加到您的网页中。与用户建立连接并获得良好权限后,可以通过您随请求发送的JWT令牌授予该用户访问其他资源的权限。