我已经配置Dialogflow在询问名字后发出POST请求。在联机请求查看器中查看信息时,我可以在“查询字符串”部分中看到所需的信息:
> { "responseId": "045c0d0b-7b5b-448e...",
> "queryResult": {
> "queryText": "rob",
> "parameters": {
> "last-name": "lastname",
> "given-name": "Rob"
> },
但是,在Django中,我找不到此信息。我试图将完整的request和request.META保存在数据库中。
我的服务器上收到的请求如下:
{'QUERY_STRING':'','REQUEST_METHOD':'POST','CONTENT_TYPE': 'application / json','CONTENT_LENGTH':'5323','REQUEST_URI': '/ folder','PATH_INFO':'/ folder','DOCUMENT_ROOT': '/home/info/domains/mysite.info/private_html'、'SERVER_PROTOCOL': 'HTTP / 1.1','HTTPS':'on','REMOTE_ADDR':'64 .233.172.250', 'REMOTE_PORT':'53451','SERVER_PORT':'443','SERVER_NAME': 'mysite.info','HTTP_CONTENT_TYPE':'application / json','HTTP_HOST': 'www.mysite.info','HTTP_CONTENT_LENGTH':'5323','HTTP_CONNECTION': 'keep-alive','HTTP_ACCEPT':' / ','HTTP_USER_AGENT': 'Google-Dialogflow','HTTP_ACCEPT_ENCODING':'gzip,deflate,br', 'wsgi.input':, 'wsgi.file_wrapper':, 'wsgi.version':(1,0),'wsgi.errors':<_io.TextIOWrapper名称= 2 mode ='w'encoding ='UTF-8'>,'wsgi.run_once':False, 'wsgi.multithread':False,'wsgi.multiprocess':True, 'wsgi.url_scheme':'https','uwsgi.version':b'2.0.18','uwsgi.node': b'server.mysite.info','SCRIPT_NAME':''}
我将Nginx与Uwsgi一起使用
如何在Django中访问全部信息?
答案 0 :(得分:0)
我应该在视图中使用request.body。无需在Dialogflow中使用自定义标头。所有需要的信息都在请求中。