Php 接收Facebook机器人发送的消息
我目前正在用PHP开发一个Facebook Messenger机器人,但我无法使用PHP接收发送给机器人的消息(php://input) $userMessage变量始终为空。但是我可以看到从ngrok web界面发送到bot的任何消息。 请看下面我的代码Php 接收Facebook机器人发送的消息,php,facebook-messenger-bot,Php,Facebook Messenger Bot,我目前正在用PHP开发一个Facebook Messenger机器人,但我无法使用PHP接收发送给机器人的消息(php://input) $userMessage变量始终为空。但是我可以看到从ngrok web界面发送到bot的任何消息。 请看下面我的代码 $message=file_get_contents("php://input"); $data=json_decode($message,true); 请参阅下面服务器的响应 { "object": "page", "entry": [
$message=file_get_contents("php://input");
$data=json_decode($message,true);
请参阅下面服务器的响应
{
"object": "page",
"entry": [
{
"id": "2081173465260168",
"time": 1535037661116,
"messaging": [
{
"sender": {
"id": "1935422053189934"
},
"recipient": {
"id": "2081173465260168"
},
"timestamp": 1535037659856,
"message": {
"mid": "NV5F2SEvBt_kiByHhOHOOxGuHnFsxPmmjMlkwErkhywnh8GyDCcggY9L6S8zg1V5BCO7yd2CkPVsE6AVAx7TFg",
"seq": 20758,
"text": "Hello bot"
}
}
]
}
]
}
几个小时后,我才发现问题出在URL末尾有一个斜杠。谢谢大家如果您希望人们在这里帮助您,您可能需要添加一些额外的代码…嗨@Alberto,谢谢您的回复,我只是在尝试检索发送到Bot的消息。`$message=file\u get\u contents('php://input"); $data=json_decode($message,true);`这是唯一一行代码,bot可以工作,因为我可以在ngrok服务器上看到消息日志。我只是不知道为什么我不能用phpy检索它。您的代码不完整,您需要添加更多的代码。以下是我在web上找到的示例:@unixmiah使用您的示例,下面是一行不起作用的代码//handle bot的anwser$input=json\u decode(file\u get\u contents('php://input是的);。如果你已经验证了你的机器人,前几行是不相关的,我已经验证了。我只需要处理我收到的消息bot file\u get\u contents('php://input'). 不是working@unixmiah我已经添加了来自服务器的响应,我只需要在PHP代码中选择输入。
{
"object": "page",
"entry": [
{
"id": "2081173465260168",
"time": 1535037661116,
"messaging": [
{
"sender": {
"id": "1935422053189934"
},
"recipient": {
"id": "2081173465260168"
},
"timestamp": 1535037659856,
"message": {
"mid": "NV5F2SEvBt_kiByHhOHOOxGuHnFsxPmmjMlkwErkhywnh8GyDCcggY9L6S8zg1V5BCO7yd2CkPVsE6AVAx7TFg",
"seq": 20758,
"text": "Hello bot"
}
}
]
}
]
}