2013-11-22 63 views
0

我在Azure数据库上配置了移动服务,我试图发送POST请求来更新数据。该服务不断返回一个错误的请求,我担心它会因为我的JQuery.Ajax请求的格式。我尝试了一些数字组合,但我看不出我做错了什么。请求的模式可以在这里找到(http://msdn.microsoft.com/en-us/library/windowsazure/jj677200.aspx),任何帮助将不胜感激。JQuery.Ajax向Azure返回错误请求的POST请求

function RegisterPatient(){ 

     var wsUrl = "https://vervemobile.azure-mobile.net/tables/ref_*****"; 
     var data = {"YearOfBirth":1970,"Sex":"M","ControlGroupMember":false,"OrganisationID":null,"Type":null} 

     $.ajax({ 
      url:wsUrl, 
      type: "POST", 
      data:data, 
      beforeSend: function (request) 
      { 
       request.setRequestHeader("X-ZUMO-APPLICATION", "******"); 
       request.setRequestHeader("Content-Type", "application/json"); 

      }, 
      success: function(data, textStatus, jqXHR) 
      { 
       alert(JSON.stringify(data)); 
      }, 
      error: function (jqXHR, textStatus, errorThrown) 
      { 
       alert(JSON.stringify(jqXHR)); 
       console.log(JSON.stringify(jqXHR)); 
       console.log(JSON.stringify(textStatus)); 
       console.log(JSON.stringify(errorThrown)); 

      } 
     }); 

    } 

由于事先 布拉德利

+0

您可以发布原始请求/响应吗? – marekful

回答

2

请求需要一个JSON体发送,所以你必须字符串化您的数据。

... 
    $.ajax({ 
     url:wsUrl, 
     type: "POST", 
     data: JSON.stringify(data), 
     ...  
+0

好主意,但不幸的是,我仍然得到同样的错误 - 任何其他想法?再次感谢 – Bradley

+0

您是否尝试过发送X-ZUMO-AUTH和X-ZUMO-MASTER标题。 – Musa

+0

我完全复制了您的代码,然后更改了网址和密钥以指向我自己的服务,并使用了Musa建议的JSON.stringify(数据)更改,并且它对我工作正常 - 数据已插入到我的移动服务表中,已更新'id'属性返回有效的JSON响应。 – briandunnington