Gibt es eine Möglichkeit, die vollständige Anforderungs-URL einschließlich des Abfragezeichenfolgeteils in einer Azure Functions-HTTP-Trigger-JavaScript-Funktion abzurufen?Azure-Funktionen: Abrufen der vollständigen Anforderungs-URL einschließlich Abfragezeichenfolge in einer HTTP-Triggerfunktion
Die Parameter req (und context.req) enthalten die URL ohne die Abfragezeichenfolge in req.url und die Abfragezeichenfolge als Schlüssel/Wert-Paare in req.query. Aber soweit ich sehen kann, ist es nicht möglich, direkt auf die vollständige Anfrage-URL zuzugreifen. Es ist auch unmöglich, die vollständige URL nur mit der Basis-URL und dem Schlüsselwertobjekt zu rekonstruieren.
Zum Beispiel so etwas wie http://foo.azurewebsites.net/api/bar/baz?a=1&&&b=2&c=&d===5&e=&f=6&g
wird in
gedreht{
url: '/bar/baz/',
query: {
a: '1',
b: '2',
c: '\n\u0001d\u0012\u0003==5',
e: '\n\u0001f\u0012\u00016',
g: '\n\u0001a\u0012\u0003\n\u00011'
}
}
Zugriff auf die vollständige URL zu haben ist erforderlich für eine Proxy-Aufbau, eine URL Shortener etc. Und da gibt es kein offizielles Format für Abfrage Strings, nur Konventionen, es wäre schön, in der Lage zu sein, alle Arten von Abfrage-Strings nur für den Fall zu behandeln.
Danke Mikhail! Leider req.originalUrl enthält nicht die Abfragezeichenfolge, nur die Basis-URL (wie req.url). – jarsta
Es tut, ich lief meine Funktion und bekam 'https: //myapp.azurewebsites.net/api/HttpTriggerJS1? Code = mycode & test = test2' im Log – Mikhail
Interessant. Welche Version der Laufzeit verwenden Sie? Dies kann entweder ein Problem mit der 2.x-Laufzeitumgebung oder der macOS-CLI-Umgebung sein. Habe gerade eine neue App und Funktion zum Testen erstellt und die Abfragezeichenfolge ist definitiv nicht in req.originalUrl enthalten. Danke, dass du mich in die richtige Richtung gelenkt hast! – jarsta