Azure函数:在HTTP触发器函数中获取完整的请求URL(包括查询字符串)

贾斯塔

有没有办法在Azure函数HTTP触发器Javascript函数内部获取完整的请求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: '/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'
    }
}

建立代理,URL缩短程序等需要访问完整的请求URL。而且由于查询字符串没有正式格式,只有约定,因此能够只处理所有类型的查询字符串就很好了。案件。

米哈伊尔·希尔科夫(Mikhail Shilkov)

根据文档,您应该可以从req.originalUrl以下网站获取它

module.exports = function (context, req) {
  context.log('HTTP trigger function processed a request: ' + req.originalUrl);
  context.done();
};

注释的更新:显然,这在2.0运行时上尚不起作用,但最终会得到支持:issue

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Azure函数:如何将http触发器函数的查询字符串参数绑定到Cosmos DB的SQL查询

在Azure函数NodeJs Http触发器中获取请求标头

Azure函数,CosmosDB触发器:如何在密钥库中存储连接字符串

在Servlet中获取HTTP和HTTPS请求的完整URL和查询字符串

NodeJS请求库如何获取完整的URL,包括URI和查询字符串参数

Azure Http触发器函数调用

如何在队列触发器中的azure函数中获取主机URL作为输入?

我可以在azure函数中实现异步“触发并忘记” HTTP触发器吗?

如何在控制器中获取HTTP请求和查询字符串PARAMS

无法使用 Azure 函数 Blob 触发器获取 Blob SAS URL

使用Azure函数HTTP触发器的mTLS?

在触发器中连接字符串,查询和序列号

在插入触发器上将查询作为字符串插入数据库中

Azure函数中的Http触发器-在camelcase中序列化对象

Javascript中的简单Azure函数可在队列中使用HTTP触发器主体

Http 响应中的 Azure 函数返回字符串

云函数 onCreate 触发器函数失败 HTTP 错误:400,请求有错误

Azure函数的多个触发器

Azure函数队列触发器

检索Azure函数触发器信息

从解析器内部获取完整的查询字符串

如何在触发器函数中使用json字符串元素而不将其声明为变量

保护非HTTP触发的Azure函数(例如服务总线触发器)

从python中的字符串获取函数

将多个Azure EventHub触发器触发到Azure Function应用中的单个函数

由于函数的 http 触发器绑定中的路由模板错误,Azure Function 应用程序关闭

如何将查询字符串数据或任何值从 url 传递到 AngularJS 中的控制器函数?

从URL获取整个字符串,包括非查询字符串C#

使用Python的Azure函数-不触发Blob触发器