如何使用带有Firebase的AJAX发出POST请求?

时间:2017-01-03 19:07:18

标签: jquery ajax firebase firebase-realtime-database

我将我的数据保存在网址domain/data.json中,如下所示:

[{
"title": "first thought",
"content":
  {
    "desc":"This is the first thought",
    "img":"img.png"
  }
},
{
"title": "second thought",
"content":
  {
    "desc":"This is the second thought",
    "img":"img.png"
  }
}
}]

如何使用AJAX向此数据发出POST请求?我尝试了下面的代码,但它给了我错误的请求错误。我也尝试从镀铬扩展ARC测试它,但它也没有用。

$.ajax({
  url: "https://musing-83d85.firebaseio.com/thoughts.json",
  type: "POST",
  crossDomain: true,
  dataType: "json",
  data: {
    content:
    {
      desc:"This is the new thought",
      img:"imgn.png"
    },
    title:"new title"
  }, // Data sent to server, a set of key/value pairs (i.e. form       fields and values)
  success: function(data){   // A function to be called if request succeeds
     this.setState({thought: data});
  }.bind(this)
});

但它不起作用。

1 个答案:

答案 0 :(得分:0)

实际上,您的问题有一个非常简单的解决方法。你现在可能已经想到了这一点。

您在上面发布的json文件无效json。 (见jsonlint.com)

同样,在使用Firebase时,请尝试仅使用对象的对象/对象。 (这是我发现为什么https://firebase.googleblog.com/2014/04/best-practices-arrays-in-firebase.html

的好文章

您的ajax代码看起来不错,但除非您发送有效的json,否则您的帖子不会成功。您还可以尝试使用Postman等工具在输入代码之前测试CRUD操作和json数据。我也推荐这个。

希望这有帮助!干杯!