2017-03-22 5 views
0

Ich habe ein Problem mit meiner Post Anfrage in Javascript.Post Anfrage wird abgeschnitten

ich den folgenden Code haben für den Versand der Post-Anforderung

var xhttp = new XMLHttpRequest(); 
     xhttp.onreadystatechange = function() 
     { 
      if (this.readyState == 4 && this.status == 200) 
      { 
       //stuff 
      } 
     }; 
     xhttp.open("POST", "/deleteUser", true); 
     xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); 
     xhttp.send("username=" + username); 

Und in meinem node.js Anwendung auszudrücken i erhalten sie wie diese

var username = req.body.username; 

Jetzt funktioniert das perfekt mit normalen Zeichen (Ziffern und Buchstaben). Aber wenn ich

versucht
>df)(*&&^%$ 

als Benutzername wird es abgeschnitten

>df)(* 

Ich vermute, dass es wegen der & ist.

Meine Frage: Wie verhindere ich, dass es abgeschnitten wird.

Vielen Dank im Voraus!

+0

Mehr Infos mit: http://stackoverflow.com/questions/4007969/application-x-www-form-urlencoded-or- multipart-form-data – ayxos

Antwort

3

Sie müssen die username Parameter in eine URI sichere Zeichenfolge konvertieren, hier xhttp.send("username="+encodeURIComponent(username));

+0

Danke für die schnelle Antwort! Es hat perfekt funktioniert. – Jan