You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Firebase Functions中无法获取req.body内lat、lng属性求助

解决Firebase Functions中无法获取请求体lat/lng的问题

从你打印的req.body结构可以清楚看到,lat和lng并非直接存在于req.body顶层,而是嵌套在jsonPayload.data层级下:

{
  "insertId": "*********",
  "jsonPayload": {
    "data": {
      "lat": 37.785834,
      "lng": -122.406417
    }
  }
}

你之前直接从req.body解构lat和lng,自然会得到undefined。修正后的代码需要从正确的嵌套层级提取字段:

exports.getAddressFromGeolocation = functions.https.onRequest((req, res) => {
  // 从jsonPayload.data层级解构目标字段
  const { lat, lng } = req.body.jsonPayload.data;
  console.log(lat, lng); // 此时能输出37.785834和-122.406417
  // 后续业务逻辑...
});

不同来源的HTTP请求体结构存在差异,比如第三方服务的webhook触发时,数据往往带有多层嵌套,提取字段前一定要先确认req.body的完整结构,再对应层级获取目标值。

内容的提问来源于stack exchange,提问作者Laurens Smid

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 16:14:58