如何使用jquery发布json数据

时间:2012-11-03 07:08:45

标签: jquery python http-post wsgi bottle

我想将JSON数据发布到网址,但下面提到的代码不会将数据发布到服务器。

我使用的是python bottle框架和WSGI服务器。

它没有收到JSON数据,WSGI服务器发出405错误。

脚本

<script src="http://code.jquery.com/jquery-latest.js"></script>

<script>
$(document).ready(function(){
$("#hi").click(function(){

var jsonObjects ='{"type":["FORGOT_PASSWORD"],"data":[{"hardwareID":"SAM1234567890123","emailID":"v@gmail.com"}]}';

jQuery.ajax({
      url: "http://192.168.0.135:8080/uid",
      type: "POST",
      contentType: "application/json",
      data: JSON.stringify(jsonObjects),
      success: function(result) {
     //Write your code here
      }
});

});
});
</script>

HTML

<input type="button" value="submit" id="hi" />
<p>If you click on me, I will disappear.</p>

1 个答案:

答案 0 :(得分:0)

data: JSON.stringify(jsonObjects),

因为你的json有效负载已经是一个字符串,所以不需要对其进行字符串化,尽管如果你将字符串化为字符串,我愿意下注......

接下来要问的是你发帖的网址是什么?您的浏览器只允许192.168.0.135

最后尝试添加一些调试,console.log和console.dir是你的朋友: - )

jQuery.ajax({
  url: "http://192.168.0.135:8080/uid",
  type: "POST",
  contentType: "application/json",
  data: jsonObjects,
  success: function(result) {
    console.log("success, check your server-side!");
    console.dir(result);
  },
  error: function(result) {
    console.log("error!");
    console.dir(result);
  }
});