Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Telegram 如何回答电报内联查询?_Telegram_Telegram Bot_Python Telegram Bot - Fatal编程技术网

Telegram 如何回答电报内联查询?

Telegram 如何回答电报内联查询?,telegram,telegram-bot,python-telegram-bot,Telegram,Telegram Bot,Python Telegram Bot,我的电报机器人无法获得内联查询的答案 以下是一些处理内联查询的代码: urlid = url['result'][0]['inline_query']['id'] str(urlid) fromid = url['result'][0]['inline_query']['from']['id'] str(fromid) query = url['result'][0]['inline_query'][

我的电报机器人无法获得内联查询的答案

以下是一些处理内联查询的代码:

urlid = url['result'][0]['inline_query']['id']
            str(urlid)
            fromid = url['result'][0]['inline_query']['from']['id']
            str(fromid)
            query = url['result'][0]['inline_query']['query']
            if query == '/getinfo':  
                r = requests.get('http://' + address + ':' + port + '/')
                D = r.json() 
                message_text = str(len(D['info']))
                results = [{'type': 'article', 'message_text': message_text, 'id': '1', 'title': 'count'}]
                json.dumps(results)
                data = {'inline_query_id': urlid, 'results': results}
                bot.answerInlineQuery(data)
这就是答案函数:

def answerInlineQuery(self, data):
        global url
        print('ok, we in answer func')
        sendurl = url + 'answerInlineQuery'
        requests.post(sendurl, data)
如您所见,这里有一个到函数标记的转换:
print('ok,我们在回答func')
。当我输入内联查询时,我会在控制台中看到这条消息。但对这一请求的答复并不是电报。这意味着请求处理程序工作正常,但在响应函数中出现了错误。你能告诉我我的错误是什么吗


UPD:我在
结果
目录中添加了
“输入消息内容”
键,但它没有解决我的问题。

您的
结果
没有什么问题,应该是以下格式:

{"id": "1", "input _message_content": {"message_text": "Hello"}}

有关更多详细信息,请参见官方网站。

没错,我已经修复了它,但它无论如何都不起作用。我无法确认此问题与请求正文或您的查询有关。我认为您应该查看电报错误输出的详细信息。好的,我从服务器得到这个答案:响应[400]。否。我从控制台获得它,我在应答func:r=requests.post(sendurl,data)r.json()print(r)中使用了这段代码。是吗?