使用ngrok for ki时只返回404

2024-09-27 19:24:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我想开发一个kik机器人。我使用ngrok将本地主机隧道到ngrok服务器。然而,每当我运行python程序并启动ngrok服务器并在手机上向bot发送消息时,它返回的结果都是404个错误。这是我的python代码

from flask import Flask, request, Response
import os 
from kik import KikApi, Configuration 
from kik.messages import messages_from_json, TextMessage

app = Flask(__name__)
BOT_USERNAME = os.environ.get('BOT_USERNAME') 
BOT_API_KEY =  os.environ.get('BOT_API_KEY') 

kik = KikApi(BOT_USERNAME, BOT_API_KEY)

kik.set_configuration(Configuration(webhook='my_webhook'))

@app.route('/incoming', methods=['POST'])
def incoming():
    if not kik.verify_signature(request.headers.get('X-Kik-Signature'),    request.get_data()):
    return Response(status=403) 

    messages = messages_from_json(request.json['messages'])

    for message in messages:
        if isinstance(message, TextMessage):
            kik.send_messages([
                TextMessage(
                    to=message.from_user,
                    chat_id=message.chat_id,
                    body=message.body
                )
            ])

return Response(status=200)


if __name__ == "__main__":
    app.run(port=8080, debug=True)

基本上,当我运行这个文件时,ngrok和本地主机会告诉我“404notfound”。我按照指示here发了一篇文章来设置我的bot的配置。当我检查kik bot的webhook时,它显示了ngrok的url。我还需要做些什么才能作为普通用户向bot发送消息吗?我知道kik使用“X-kik-Username”进行身份验证,那么这和它有关系吗?在

Error messages from ngrok


Tags: fromimportjsonappmessagegetosresponse

热门问题