如何从 Python 中的 GET 请求中获取参数

How to fetch parameters from a GET request in Python

所以我一直在构建一个由 RASA 堆栈(开源)提供支持的聊天机器人。 创建机器人后,我想将它与我们的 Web 应用程序集成。现在我可以从我的 RASA 核心获得响应,但我遇到了问题。我在 GET 请求中传递了一个唯一的 user_id,我需要在 python 函数中获取它并调用外部 API 到我的数据库。但我不知道如何从 GET 请求中提取该参数。这里有一些细节。

我的 GET 请求:(我在 AWS 服务器上上传了我的机器人) http://my_ip_.amazonaws.com:5005/conversations/27/respond?q=%27Hi

所以我的唯一 ID 是 27,我想在 python 函数中获取它。

以及我通过此请求获得的响应:

[{“recipient_id”:“27”,“text”:“Hey! What can I do for you?”}]

如您所见,我在 postman 中传递了 GET 请求,并从我的 RASA CHATBOT 收到了此响应,但我想跟踪此用户 ID 27。

所以我的问题是如何跟踪这个 ID?或者你们可以建议我另一种方法。

提前感谢您的帮助 :) 我的第一个 post 顺便说一句 :)

[如果你觉得这个问题遗漏了什么,请问我]

因此您从请求中收到以下数据:
[{“recipient_id”:“27”,“text”:“Hey! What can I do for you?”}].
如果是列表:
只需使用:
response = [{“recipient_id”:“27”,“text”:“Hey! What can I do for you?”}] recepient_id = response[0]['recipient_id'] 如果是字典:
response = {“recipient_id”:“27”,“text”:“Hey! What can I do for you?”} recepient_id = response['recipient_id']

所以我使用跟踪器数据解决了这个问题。实际上,我必须将 link 跟踪器字典添加到我的自定义操作文件中,以便我可以访问 sender_id 和其他槽值。 我用过:

user_id = tracker.sender_id
parameters ={}
parameters = {"user_id": user_id}

然后它遵循我的 post 请求并且成功了!谢谢