2016-12-14 84 views
1

我正在對Slim框架Web服務進行ajax調用。這用於將筆記發送到我的數據庫。苗條框架和ajax。 '/'字符作爲參數

問題是,用戶可以寫例如「發送1/2片」。所以當我打電話時,由於'/'字符的原因,URL不會找到404。

有什麼辦法可以避免這個問題嗎?

notes = 'send 1/2 piece' 

$.ajax({ 
      type: 'GET', 
      url: 'http://Myserver/orders/notes/' + MyOrder + '/' + notes, 
      dataType: "json", // data type of response 
      beforeSend: function(xhr, settings){ 
      }, 
      success: function(data){ 
      }, 
      error: function(xhr, status, errorThrown){ 
       errorPopup(errorThrown);      
      }, 
      complete: function(xhr, status){ 
      } 
     }); 
+1

'EncodeURI' /'EncodeURIComponent' –

+0

EncodeURIComponent不適合我。它只是對完整的URL進行編碼,而我仍然得到404 –

+0

GET不是發送任意數據的最佳方法。我會考慮使用POST。 –

回答

0

您需要僅針對筆記運行EncodeURIComponent。

你的Ajax調用之前:

notes = 'We have funny characters in here like /es'; 
encNotes = EncodeURIComponent(notes); 

然後,使用編碼字符串創建URL字符串。

url: 'http://Myserver/orders/notes/' + MyOrder + '/' + encNotes, 
+0

我得到了同樣的錯誤:http:// Myserver/orders/notes/PV1600484/send%201%2F2%20piece 404(Not Found) –

+0

請發佈代碼,聲明您的GET路線 –