使用藍圖的 `route()` 方法,通過添加裝飾器的形式,就可以把一個函數綁定到對應的 URL 上。
```
@bp.route('/', methods=['GET'])
def index():
return 'hello flask'
```
為 `app/api_1_0/controller` 下的 `index.py` 控制器綁定路由 (我們以 `api_1_0` 模塊為例進行演示)
```
#!/usr/bin/env?python3
#?-*-?encoding:?utf-8?-*-
from?app.api_1_0?import?bp
@bp.route('/',?methods=['GET'])
def index():
return 'hello?flask'
```
在終端下進入 `flask_demo` 目錄,并激活虛擬環境
```
# 以開發模式運行
(.venv) root@airvip:~/python_app/flask-demo# export?FLASK\_ENV=development
# 指定入口文件
(.venv) root@airvip:~/python_app/flask-demo# export?FLASK\_APP=manage.py
# 啟動項目
(.venv) root@airvip:~/python_app/flask-demo# flask run
* Serving Flask app "manage.py" (lazy loading)
* Environment: development
* Debug mode: on
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
* Restarting with stat
* Debugger is active!
* Debugger PIN: 140-781-151
```
此時在瀏覽器訪問 `http://127.0.0.1:5000/api/v1.0/` 即可得到如下頁面

**練習**
為 `app/api_1_0/controller` 下的 `passport.py` 控制器綁定路由
```
#!/usr/bin/env?python3
#?-*-?encoding:?utf-8?-*-
from?app.api_1_0?import?bp
@bp.route('/register',?methods=['POST'])
def register():
pass
@bp.route('/login',?methods=['POST'])
def login():
pass
@bp.route('/logout',?methods=['DELETE'])
def logout():
pass
```