Flask-WeRoBot¶
Flask-WeRoBot 是一个帮助你将 WeRoBot 集成进 Flask 的插件。
你只要创建一个 WeRoBot
类,就可以轻松的在你的 Flask 应用中集成 WeRoBot 。
入门¶
最简单的 Hello World
from flask import Flask
from flask.ext.werobot import WeRoBot
app = Flask(__name__)
robot = WeRoBot(app)
@robot.handler
def echo(message):
return 'Hello World'
你可以像使用 WeRoBot 一样使用 Flask-WeRoBot ,比如开启 Session
from flask import Flask
from flask.ext.werobot import WeRoBot
app = Flask(__name__)
robot = WeRoBot(app, enable_session=True)
@robot.handler
def echo(message, session):
return 'Hello World'
当然,你也可以在实例化 WeRoBot
时不传入 Flask App ,而是之后通过 WeRoBot.init_app()
来给 Flask App 添加 WeRoBot 支持
from flask import Flask
from flask.ext.werobot import WeRoBot
robot = WeRoBot()
@robot.handler
def echo(message):
return 'Hello World'
def create_app():
app = Flask(__name__)
robot.init_app(app)
return app
配置¶
名称 | 描述 | 默认值 |
---|---|---|
WEROBOT_TOKEN | 微信 Token 值 | None |
WEROBOT_ROLE | Flask-WeRoBot 监听的地址 |
Attention
你可以在实例化 WeRoBot
时传入一个 token
,或者随时通过修改 WeRoBot.token
的值来改变 token 。
Flask-WeRoBot 会优先使用手动指定的 Token ,若没有手动指定才会使用配置文件中的 `` WEROBOT_TOKEN ``
API¶
-
class
flask.ext.werobot.
WeRoBot
(app=None, endpoint='werobot', rule=None, *args, **kwargs)¶ 给你的 Flask 应用添加 WeRoBot 支持。
你可以在实例化 WeRoBot 的时候传入一个 Flask App 添加支持:
app = Flask(__name__) robot = WeRoBot(app)
或者也可以先实例化一个 WeRoBot ,然后通过
init_app
来给应用添加支持robot = WeRoBot() def create_app(): app = Flask(__name__) robot.init_app(app) return app
-
init_app
(app, endpoint='werobot', rule=None)¶ 为一个应用添加 WeRoBot 支持。 如果你在实例化
WeRoBot
类的时候传入了一个 Flask App ,会自动调用本方法; 否则你需要手动调用init_app
来为应用添加支持。 可以通过多次调用init_app
并分别传入不同的 Flask App 来复用微信机器人。Parameters: - app – 一个标准的 Flask App。
- endpoint – WeRoBot 的 Endpoint 。默认为
werobot
。 你可以通过 url_for(endpoint) 来获取到 WeRoBot 的地址。 如果你想要在同一个应用中绑定多个 WeRoBot 机器人, 请使用不同的 endpoint . - rule – WeRoBot 机器人的绑定地址。默认为 Flask App Config 中的
WEROBOT_ROLE
-