Azure 함수 HTTP 트리거 Javascript 함수에서 쿼리 문자열 부분을 포함하여 전체 요청 URL을 가져 오는 방법이 있습니까?Azure 함수 : HTTP 트리거 함수에서 쿼리 문자열을 포함한 전체 요청 URL 가져 오기
req (및 context.req) 매개 변수는 req.url에 쿼리 문자열이없는 url과 req.query에 키 - 값 쌍으로 쿼리 문자열을 포함합니다. 그러나 내가 볼 수있는 한 전체 요청 URL에 직접 액세스 할 수는 없습니다. 기본 URL과 키 - 값 객체만으로 전체 URL을 재구성하는 것도 불가능합니다. http://foo.azurewebsites.net/api/bar/baz?a=1&&&b=2&c=&d===5&e=&f=6&g
같은 예를 들어 뭔가를
는 축약 등 프록시 URL을 구축에 필요한 전체 요청 URL에 대한 액세스 권한을 갖는
{
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'
}
}
로 바뀌 그리고 도착 공식적인 형식이 없기 때문에 쿼리 문자열, 규칙 만 있으면 모든 유형의 쿼리 문자열을 처리 할 수 있다는 것이 좋습니다. 댓글에서
module.exports = function (context, req) {
context.log('HTTP trigger function processed a request: ' + req.originalUrl);
context.done();
};
업데이트 : 분명히,이 아직 2.0 런타임에서 작동하지 않습니다,하지만 결국 지원됩니다 docs을 바탕으로
감사합니다. Mikhail! req.originalUrl에는 검색어 문자열 (기본 URL 만 포함) (req.url과 동일)이 포함되지 않습니다. – jarsta
내 기능을 실행하고 로그에'https : //myapp.azurewebsites.net/api/HttpTriggerJS1? code = mycode & test = test2'가 있습니다 – Mikhail
흥미 롭습니다. 어떤 버전의 런타임을 사용하고 있습니까? 이것은 2.x 런타임 또는 macOS CLI 환경의 문제 일 수 있습니다. 테스트 할 새 앱과 함수를 만들었으며 쿼리 문자열은 req.originalUrl에 포함되어 있지 않습니다. 그래도 올바른 방향으로 날 조종 해줘서 고마워! – jarsta