在本教程中,我们将学习如何使用 Vue.js(前端框架)和 Flask(后端框架)构建一个简单的前后端分离应用。本教程假设你对 HTML、CSS 和 JavaScript 有基本了解。让我们开始吧!
如果对Flask和Vue还不太熟悉,可以选择查看博主之前的教学文章:
创建一个文件夹,用来存储项目,例如myapp,之后的文件夹都myapp这里面创建。
进入myapp文件夹,在命令行中创建一个新的目录:mkdir myapp-backend。
进入项目目录:cd myapp-backend。
创建一个名为 app.py 的文件,内容如下:
# 导入 Flask
from flask import Flask, jsonify
# 导入 CORS
from flask_cors import CORS
# 创建一个 Flask 应用实例
app = Flask(__name__)
# 并允许来自所有域的请求
CORS(app)
# 定义一个简单的路由
@app.route('/api/data', methods=['GET'])
def get_data():
# 创建一个字典作为模拟数据
data = {
"message": "Hello from Flask!",
"items": [
{"id": 1, "name": "Item 1"},
{"id": 2, "name": "Item 2"},
{"id": 3, "name": "Item 3"}
]
}
# 将字典转为 JSON 并返回
return jsonify(data)
# 如果作为主程序运行,启动应用
if __name__ == '__main__':
app.run(debug=True)
运行项目:python app.py,在浏览器中访问 http://localhost:5000/api/data 查看效果。
在 myapp-frontend 目录下,安装 axios:npm install axios。
在 src 目录下创建一个名为 services 的新目录。
在 services 目录下创建一个名为 DataService.js的文件,内容如下:
// 导入 axios
import axios from 'axios';
// 创建一个 axios 实例,用于发送请求
const apiClient = axios.create({
// 设置后端 API 的基础 URL
baseURL: 'http://localhost:5000/api',
// 设置请求头
headers: {
Accept: 'application/json',
'Content-Type': 'application/json',
},
});
// 定义一个用于获取数据的函数
export default {
getData() {
// 向 '/data' 路由发送 GET 请求
return apiClient.get('/data');
},
};
**请求头(Request Headers)**是在发送 HTTP 请求时,客户端向服务器发送的一组键值对。它们提供有关请求的元数据,例如请求类型、内容类型以及客户端想要接收的响应格式等。请求头有助于服务器了解如何处理传入的请求,并提供相应的响应。
在上面的代码片段中,请求头包含两个键值对:
这些请求头在 DataService.js 文件中的 axios 实例中设置,以确保与 Flask 后端服务器之间的通信遵循这些规则。当您的应用程序向后端发送请求时,axios 会自动包含这些请求头。
打开 myapp-frontend/src/components/HelloWorld.vue 文件。
删除