You need to enable JavaScript to run this app. 不使用Postman能否通过JavaScript或jQuery向JSON文件插入新对象?
优惠活动
大模型
产品
解决方案
定价
更多

不使用Postman能否通过JavaScript或jQuery向JSON文件插入新对象?

问题解决方法

核心原因说明

首先明确两个前提:

  1. 浏览器端运行的JavaScript本身没有直接写入服务器磁盘文件的权限,你用Postman可以成功新增对象,说明你的服务器已经针对json.json这个路径配置了对应的请求处理逻辑,能够接收参数后修改服务器上存储的json.json文件。
  2. 你现有代码最明显的错误是url参数中带了多余的空格,首先要把空格删除。

最常见的失败原因

Postman不受浏览器跨域规则限制,如果你前端页面的部署域名和https://mysite.com不一致,浏览器会默认拦截你的AJAX请求,这是90%以上Postman能成、前端代码不成的原因,需要让服务器运维同学配置CORS跨域允许规则。

修正后的代码示例

你可以先使用下面的代码,同时对照Postman的请求配置调整参数:

$(document).ready(function() {
    $.ajax({
        method: "POST", // 确认Postman用的是POST方法,不对就改成PUT
        url: "https://mysite.com/json.json", // 已删除多余空格
        dataType: "json",
        contentType: "application/json",
        data: JSON.stringify({ Name: "John", latitude: "111", longitude: "222",status:"R" }),
        // 如果Postman配置了鉴权头、自定义头,在这里补充
        // headers: {
        //   "Authorization": "Bearer 你的鉴权token"
        // }
    })
    .done(function( msg ) {
      alert( "操作成功: " + JSON.stringify(msg) );
    })
    .fail(function( jqXHR, textStatus, errorThrown ) {
      // 控制台打印完整错误信息,方便排查具体问题
      console.error("请求失败详情:", jqXHR.responseText, textStatus, errorThrown);
      alert( "请求失败: " + textStatus );
    });
});

其他排查点

如果修改后还是失败,可以对照Postman的配置逐一核对:

  • 请求方法是否一致:部分服务端接口用PUT接收修改请求
  • 请求头是否一致:有没有遗漏Accept、鉴权类的请求头
  • 请求体格式是否一致:确认你传的字段名、字段类型和Postman里的配置完全相同

内容的提问来源于stack exchange,提问作者JessciaLau

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.20 13:54:06