Javascript Facebook Messenger,如何处理发送位置

Javascript Facebook Messenger,如何处理发送位置,javascript,node.js,facebook,facebook-messenger,Javascript,Node.js,Facebook,Facebook Messenger,根据,它向我们介绍了如何发送消息和处理按钮文本等 但是,当用户向bot发送其地理位置时,my webhook接收它的方式如下: { sender: { id: 99999999999999}, recipient: { id: 99999999999999 }, timestamp: 99999999999, message: { mid: 'mid.9999999:999999999', seq: 231, attachments: [ [Objec

根据,它向我们介绍了如何发送消息和处理按钮文本等

但是,当用户向bot发送其
地理位置时,my webhook接收它的方式如下:

{ sender: { id: 99999999999999},
  recipient: { id: 99999999999999 },
  timestamp: 99999999999,
  message:
    { mid: 'mid.9999999:999999999',
      seq: 231,
      attachments: [ [Object] ] } }
位置作为
附件
数组中的某种对象发送到webhook

在我的代码中,我尝试如下方式获取它们:

event.message.attachments[0].longitude
event.message.attachments[0].latitude
我得到未定义的

如何获取用户发送的位置的经度和纬度?文档中没有对此的描述

更新 经过一些尝试,我能够得到它的所有属性。当用户发送他们的位置时,我在这个结构中得到它:

{url: https://www.facebook.com/l.php?u=https%3A%2F%2Fwww.bing.com%2Fmaps%2Fdefault.aspx%3Fv%3D2%26pc%3DFACEBK%26mid%3D8100%26where1%3D43.230507%252C%2B76.945031%26FORM%3DFBKPL1%26mkt%3Den-US&h=vAQHe08Kz&s=1&enc=AZPRe3VQFnThq3_jdPFg8R4WWUZxWJA1XjbVvVua4fD0PNpt2u26hvS-noUEU55qQNC6Wm9hNGwpGntrUgu1nx7KsSIKRbGQyKEXueAImV3Kyg}
它是一个巨大的URL。如果您通过浏览器打开此链接,它将打开Bing地图并显示此位置


使用这些数据很难。它强制用户编写自己的解析器。

URL中有纬度和经度:

…其中1%3D43.230507%252C%2B76.945031%26构成

因此,一种方法是将URL转换为文本,然后解析该文本以获得Lat和Long

更新 现在,可以通过附件JSON直接访问lat和lng:

lat = event.message.attachments[0].payload.coordinates.lat
lng = event.message.attachments[0].payload.coordinates.long