使用JavaScript将新对象添加到JSON

时间:2019-06-19 17:52:35

标签: javascript jquery json

我有一个包含用户信息(登录名和密码)的json文件。如何使用js向Json添加新对象? (以便在加载页面后将其保存在Json中)可能吗?我无处可寻。我只能使用(javascript,jQuery,json)

json

{
    "users":[
        {
            "login":"admin",
            "password":"1207"
        }
    ]
}

js

 $(function() {
        const getOb=$.getJSON('user.json');
        var obj = JSON.parse(getOb);
        obj['users'].push({"login":"Donald","password":"78"});
        getOb = JSON.stringify(obj);
      }); 

1 个答案:

答案 0 :(得分:6)

您正在通过HTTP获取数据。

如果要将其保存回服务器,则需要向服务器发出HTTP请求(通常是PUT或POST请求),然后获取服务器端代码(以您选择的语言编写)接受HTTP请求并保存数据。

通常,您会将数据保存到数据库中,然后根据需要从数据库中生成JSON,而不是使用普通文件(这样可以避免出现竞争情况)。


注意:

  • 以纯文本格式存储密码很危险。使用哈希算法。
  • 将身份验证数据发送到客户端,并要求其进行身份验证:
    • 将您的身份验证数据泄漏给任何尝试登录的人
    • 允许任何人在其浏览器中编辑JS并声称已成功登录

移动到服务器端身份验证系统,在该系统中,您将凭据发送到服务器,然后服务器端代码检查它们是否良好,然后返回令牌(JWT当前是一种流行的方式),可以用来证明您已登录。