2017-07-28 1 views
0

Ich versuche, den eingebauten HTTP-Request-Knoten verwenden, um eine localhost GET-Anfrage zu setzen. Allerdings habe ich Probleme mit entkommenen Charakteren. Die URL der folgenden Form sein sollte:Node-RED HTTP-Anfrage Knoten und String-Parameter

localhost:port/path?param="{{payload}}" 

ich erfolgreich die Zeichenfolge an bekommen, aber ich kann nicht das umschließende Zitat erhalten markiert richtig, sie halten immer zu HTML-Nummern in der Anfrage umgewandelt. Gibt es einen Weg dies zu verhindern?

Antwort

0

Angebotszeichen müssen URL-codiert sein, damit sie in einen Abfrageparameter eingeschlossen werden. Eine Liste der Kodierungen finden Sie in diesem Artikel w3school.

Die korrekte Art, doppelte Anführungszeichen zu codieren " ist wie %22. Je nachdem, was die Werte auf der Empfängerseite verarbeitet, müssen Sie sie möglicherweise ebenfalls decodieren. Der korrekte Weg dazu in Node.JS ist die Verwendung der decodeURIComponent()-Funktion.

+0

Wie integriere ich die Funktion decodeURIComponent in eine HTTP-Anfrage? –

+0

Sie nicht in einer HTTP-Anfrage und Sie sollten nicht in einem HTTP-in-Knoten, wie sie eingehende Abfrage-Parameter für Sie dekodieren müssen – hardillb

+0

Auch sind Sie 100% sicher, dass Sie die '" 'um den Abfrageparameter? – hardillb