google/firebase云功能似乎非常强大,可快速实现API。但是,与Amazon和Azure不同,似乎他们会自动转换为JSON有效载荷,并且如果呼叫者提交申请/XML或Text/XML有效负载,则不会使基础有效负载(Req.body为空)。
强迫呼叫者提交JSON有效载荷,尤其是对于Webhooks类型的操作,并非总是在控制。
无论如何都可以从HTTP触发请求中检索RAW XML有效载荷,然后我们可以手动将其作为XML解析并执行必要的操作。
感谢您的帮助。
request.rawBody.toString();
这与模拟器现在不起作用,但它确实可以在Google的服务器上使用。我在firebase上进行了测试。
请注意,您不能使用request.pipe()(尽管它可以与模拟器一起使用...),因为请求有效负载在处理到您的功能之前已完全读取。
讨论此问题在这里:https://issuetracker.google.com/issues/36252545