2016-06-27 6 views
0

Ich kommuniziere mit einer REST-API, die die meisten Prinzipien von REST und HTTP ignoriert. Einer der Endpunkte, die ich verwenden muss, empfängt eine POST-Anforderung, antwortet mit einem 100-Continue-Header und setzt dann die Verbindung auf der Serverseite zurück. Es geht dann weiter und führt die angeforderte Aktion aus.So erhalten Sie die JS-Anforderungsbibliothek zum Beenden der Anfrage beim Empfang von 100 Antworten

Wenn ich diese Anfrage über die Anforderungsbibliothek senden möchte, wartet meine Knoten-App leider auf eine weitere Antwort vom Server. Dies ist, was meine Anfrage wie folgt aussieht:

{ method: 'POST', uri: (host + ':' + context.port + '/xxx/xxxxx') || '', headers: { 'Content-Type': 'text/xml', 'Expect': '100-continue' }, auth: { user: context.user || '', pass: context.password || '' }, body: bodyOfPost };

Was Ich mag würde Anfrage bekommen zu tun ist, den Moment beenden sie erhält eine 100 Antwort vom Server. Ist das überhaupt möglich?

PS:. Ja, ich weiß und stimmen diese ‚API‘ ist eine Farce, aber ich kann es nicht aus Gründen zu lange in irgendeiner Weise ändern für diesen Beitrag :-)

Antwort

0

So funktionierte es wir gerade aus ziemlich schrecklich, indem das Timeout explizit in der Anfrage selbst gesetzt wird, so dass der Knoten jedes Mal ausfällt, wenn dieser API-Endpunkt verwendet wird. Wenn es keine Möglichkeit gibt, sie zu überschreiben, ist dies wahrscheinlich die beste Lösung.

Verwandte Themen