gpt4 book ai didi

c# - Facebook Messenger API 在 c# asp.net mvc 应用程序中的实现

转载 作者:行者123 更新时间:2023-11-30 23:22:53 24 4
gpt4 key购买 nike

在 node.js 实现中像

app.post('/webhook/', function(req, res) {  
console.log("message received " + req.body);
if(!req.body){
console.log("no request body found");
res.sendStatus(200);
return;
}

messaging_events = req.body.entry[0].messaging;
for (i = 0; i < messaging_events.length; i++) {
event = req.body.entry[0].messaging[i];
sender = event.sender.id;
console.log("sender " + event.sender + ", message " + event.message.text);
if (event.message && event.message.text) {
text = event.message.text;
// Handle a text message from this sender
sendTextMessage(sender, "Text received, echo: "+ text.substring(0, 200));
}
}

res.sendStatus(200);
});

如何在 .net mvc 应用程序中实现它。特别是如何实现这一行

app.post('/webhook/', function(req, res)

在 mvc 的 Controller 中。

最佳答案

终于搜索并收集了一些数据

像这样的 facebook 发布模型 json 数据

{
"entry": [{

"messaging":[{
"sender": {
"id": "1126306517444636"
},
"recipient": {
"id": "514501872066958"
},
"timestamp": 1469541638971,
"message": {
"mid": "mid.1469541638961:5d5d5d5bf1194eb824",
"seq": 64,
"text": "hi"
}

}
]
}
]
}

所以我们必须像这样创建模型

public class Sender
{
public string id { get; set; }
}

public class Recipient
{
public string id { get; set; }
}

public class Message
{
public string mid { get; set; }
public int seq { get; set; }
public string text { get; set; }
}

public class Messaging
{
public Sender sender { get; set; }
public Recipient recipient { get; set; }
public long timestamp { get; set; }
public Message message { get; set; }
}

public class Entry
{
public List<Messaging> messaging { get; set; }
}

public class RootObject
{
public List<Entry> entry { get; set; }
}

在 Controller 类中

public ActionResult Webhook(RootObject model)
{
....................................
}

关于c# - Facebook Messenger API 在 c# asp.net mvc 应用程序中的实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38630541/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com