4

我很难让 json 从 javascript 发布到 rails 支持的 web 服务。

这是jquery代码;

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>
var jsonPost = { 
      "email":"dummy@dummy.com",
      "token":"63uO6eEfLVBFpnZswzI",
      "content": "testcontent",
      "notification_type": "2",
      "name":"testname",
}
  function callback(data){alert(data)};

jQuery.ajax({
        type: "POST",
        url: 'http://localhost:3000/api/create.json',
        data: jsonPost,
        success: callback,
        dataType: "json",
        contentType: "application/json",
        processData: false
      });


</script>

在铁轨一侧:

def api_create
  respond_to do |format|
    format.json {
      email = params[:email]
      token = params[:token]
      auto_action = params[:auto_action]

rails 端确实将请求识别为 JSON,但是在 rails 中调试时我在请求中看不到任何数据。

有人能指出我正确的方向吗?

4

1 回答 1

2

如果您在rails中做相反的事情,您不需要将您的JSON转换为字符串吗?

jQuery.ajax({
    type: "POST",
    url: 'http://localhost:3000/api/create.json',
    data: JSON.stringify(jsonPost),
    success: callback,
    dataType: "json",
    contentType: "application/json",
    processData: false
  });
于 2012-07-05T23:20:56.037 回答