2013-05-11 60 views
0

我試圖使用jQuery將json數據發送到服務器,但是每個拉丁字符在服務器上都是錯誤的。我已經把所有東西都放到utf-8字符集中。角色在請求時被改變。如果我發送ç之類的東西,它會以√ß的身份到達。這裏是我的方法:編碼使用jQuery將json發送到服務器

01. function(atendimento, success) { 
02.  var json = JSON.stringify({atendimento: atendimento}); 
03.  console.log('json: ', json); 
04.  $.ajax({ 
05.   url: '/atendimentos/', 
06.   data: json, 
07.   contentType: 'application/json; charset=utf-8', 
08.   dataType: "json", 
09.   type: 'POST', 
10.   success: function() { 
11.    self.atendimentos.unshift(atendimento); 
12.    success();     
13.   } 
14.  }); 
15. }; 

02打印:

json: {"atendimento":{"chegada":"11/05/2013 15:49:00","paciente":"ç","procedimento":"ç","observacoes":"ç","agendado":false}} 

然而,這就是被髮送到服務器:

{"atendimento":{"chegada":"11/05/2013 15:49:00","paciente":"ç","procedimento":"ç","observacoes":"ç","agendado":false}} 

這是收到什麼:

{"atendimento":{"chegada":"11/05/2013 15:49:00","paciente":"ç","procedimento":"ç","observacoes":"ç","agendado":false}} 

我是在客戶端使用angularJs和jQuery,在服務器上使用VRaptor。

+0

您是否將文件保存爲UTF8? – adeneo 2013-05-11 19:10:53

+0

是的。所有這些 – marceloemanoel 2013-05-11 19:15:33

+0

之前,儘量將其發送 [http://stackoverflow.com/a/2130775/336542][1] [1]編碼您的字符串:http://stackoverflow.com /一個/336542分之2130775 – sergioadh 2013-05-11 19:20:46

回答

0

顯然這個問題與VRaptor框架不符合Accept-Charset標題。我已經提交了一個補丁,一切都應該沒問題。該參數被編碼爲ISO-8859-1,並沒有如預期的那樣被解碼爲UTF-8。