2016-12-14 4 views
1

Ich mache einen Ajax Aufruf zu einem Slim Framework Web Service. Dies dient zum Senden von Notizen an meine Datenbank.schlanke Rahmen und Ajax. '/' Zeichen als Parameter

Das Problem ist, dass die Benutzer zum Beispiel "send 1/2 piece" schreiben können. Also wenn ich den Anruf mache, wirft die URL 404 wegen des '/' Zeichens nicht.

Gibt es eine Möglichkeit, dieses Problem zu vermeiden?

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 funktioniert nicht für mich. Es codiert nur die vollständige URL und immer noch bekomme ich 404 –

+0

GET ist nicht die beste Methode, um beliebige Daten zu senden. Ich würde stattdessen POST verwenden. –

Antwort

0

Sie müssen EncodeURIComponent nur für Notizen ausführen.

Bevor Sie Ihre Ajax-Aufruf:

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

Dann erstellen Sie Ihre URL-Zeichenfolge die codierte Zeichenfolge verwendet wird.

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

Ich bekomme den gleichen Fehler: http: // MyServer/Bestellungen/Notizen/PV1600484/senden% 201% 2F2% 20piece 404 (nicht gefunden) –

+0

Bitte geben Sie den Code, wo Sie Ihre GET Route deklarieren –

Verwandte Themen