[英]How to integrate Dialogflow with Django python and consume RESTful APIs?
大家好,我目前正在使用Google的Dialogflow开发一个聊天机器人,我真的需要帮助。
我已经看过如何将Dialogflow与Django(Python)集成? 但我仍然感到困惑,我不知道下一步该怎么做。 我们的Django项目已经设置好,并且我已经在Dialogflow中创建了我的代理 ,我还学习了如何使用ngrok将Dialogflow连接到实现/ webhook。 我也是Django python的新手,这些只是我到目前为止所做的事情。
我已经搜索了几乎(如果不是全部)关于如何使用RESTful API将Dialogflow集成到Django python的教程/文章/视频, 但没有找到如何实现的。 大多数教程使用Flask和NodeJS作为后端。
尽管本教程使用Flask https://www.pusher.com/tutorials/chatbot-flask-dialogflow/ ,但我尝试这样做只是为了对如何将dialogflow集成到后端并调用RESTful API有所了解。 我设法复制了本教程中所做的工作,但是不幸的是,由于我很陌生,所以我不理解后端的编码部分或设置Webhook的代码。
我现在真的迷路了,我真的不知道在后端(Django)中编码什么才能将RESTful API连接到Dialogflow。 如果你们能帮助我并提供一些详细的代码说明,或逐步将Dialogflow集成到Django并使用RestFUL API,我将非常感谢。
虽然您可以使用Dialogflow Python API进行文本请求,但我个人仅使用其POST接口。 因为对我来说使用起来更简单。 好消息是,您无需弄乱Webhook。
您需要的只是Dialogflow控制台中的客户端访问令牌。 上面写着:YOUR_CLIENT_ACCESS_TOKEN',您只需输入访问令牌。
然后,您可以像这样发送HTTP POST请求:
curl \
https://api.dialogflow.com/v1/query?v=20150910 \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_CLIENT_ACCESS_TOKEN' \
-d '{
"lang": "en",
"query": "I need apples",
"sessionId": "12345",
"timezone": "America/New_York"
}'
https://dialogflow.com/docs/reference/agent/query
我通常使用来自Python的“请求”包,您可以使用该包进行安装
pip install requests
我认为它非常漂亮且易于使用。 仅当您要使用的功能不仅仅是向Dialogflow发送查询(例如,添加或删除Intent)时,您将需要的不止于此。 但是出于您的目的,这就足够了。 希望对您有所帮助,请随时提出更多意见。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.