Grails: where does request.JSON come from, and how do I put things there with jQuery's .ajax() or .post()?

老子叫甜甜 提交于 2019-12-05 08:02:34

I have the same trouble like you few days ago.

For me - the solution was to use jQuery.ajaxSetup to set the default value for ajax content type.

$(function() {
    $.ajaxSetup({
        contentType: "application/json; charset=utf-8"
    });
}

With this you could use $.ajax or $.post to transfer your JSON to the controller and use it like that:

def yourJSON = request.JSON

I dont't know why the 'contentType' option within $.ajax and $.post was ignored during my tests.

Had a similar problem also but didn't need to use ajaxSetup, just needed to set contentType:

$.ajax({
  method: "POST",
  url: "/api/bar"
  data: JSON.stringify({a:true}),
  contentType:"application/json; charset=utf-8",
  dataType: "json",
  success: function(){
    console.log("args: %o", arguments);
  }
});
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!