简单WEB网站

news/2025/9/30 15:56:50/文章来源:https://www.cnblogs.com/xiazhen1215/p/19121245

第一步:创建项目结构
在PyCharm中创建以下目录结构
my_web_app/
├── backend/ # Flask后端代码
├── frontend/ # Vue前端代码
├── venv/ # Python虚拟环境(可选)
└──requirements.txt #安装库要求文件
第二步:前端VUE和后端FLASK
1.安装FLASK
使用临时镜像源安装包
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple flask flask-cors

2.创建Flask应用(backend/app.py)
代码:

导入Flask类和jsonify函数

from flask import Flask, jsonify

导入CORS扩展,用于处理跨域请求

from flask_cors import CORS

创建Flask应用实例

__name__参数让Flask知道在哪里查找模板和静态文件

app = Flask(name)

启用CORS,允许所有域跨域访问

在开发环境中使用,生产环境应限制为特定域名

CORS(app)

定义一个路由:当访问'/api/hello'时,执行hello函数

@app.route是装饰器,将URL映射到函数

@app.route('/api/hello')
def hello():
# 返回JSON格式的响应
# jsonify函数将Python字典转换为JSON响应
return jsonify(message="Hello from Flask!")

如果这个文件被直接运行(而不是作为模块导入)

if name == 'main':
# 启动Flask开发服务器
# debug=True: 开启调试模式(代码修改后自动重启)
# port=5000: 指定服务器在5000端口运行
app.run(debug=True, port=5000)

逐行解释:
1.​from flask import Flask, jsonify​
•导入Flask框架的核心类Flask和jsonify函数
•Flask类用于创建Web应用实例
•jsonify用于将Python数据转换为JSON格式的HTTP响应
2.​from flask_cors import CORS​
•导入flask-cors扩展,解决跨域资源共享问题
•允许前端应用(运行在不同端口)访问后端API
3.​app = Flask(name)​
•创建Flask应用实例
•__name__是Python的特殊变量,表示当前模块名
•Flask使用它来确定应用的根目录
4.​CORS(app)​
•初始化CORS扩展
•允许所有域名跨域访问(开发环境使用)
•生产环境应指定特定域名:CORS(app, resources={r"/api/*": {"origins": "http://your-frontend-domain.com"}}
5.​@app.route('/api/hello')​
•装饰器,定义URL路由规则
•当用户访问http://localhost:5000/api/hello时
•Flask会调用下面的hello()函数处理请求
6.​def hello():​
•定义处理请求的函数
•函数名可以是任意名称,但应具有描述性
7.​return jsonify(message="Hello from Flask!")​
•返回JSON格式的响应
•jsonify自动设置正确的Content-Type头为application/json
•创建格式如下的响应:{"message": "Hello from Flask!"}
8.​if name == 'main':​
•Python的标准写法
•确保代码只在直接运行此文件时执行
•当文件被导入为模块时不会执行
9.​app.run(debug=True, port=5000)​
•启动Flask开发服务器
•debug=True:开启调试模式(自动重载代码,显示详细错误)
•port=5000:指定服务器监听5000端口

3.Vue前端代码(frontend/src/views/HomeView.vue)
代码:

逐行解释:
模板部分:​​

1.​

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/923031.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

dhru商城网站建设wordpress注册logo

目录 一、理论 1.K8S安全机制 2.Authentication认证 3.Authorization授权 4.Admission Control准入控制 5.User访问案例 6.ServiceAccount访问案例 二、实验 1.Admission Control准入控制 2.User访问案例 3.ServiceAccount访问案例 三、问题 1.生成资源报错 2.镜…

2025 年窗帘杆源头厂家最新推荐榜单:包含支架 / 环 / 全自动 / 可伸缩等多类产品及配件,帮助选到品质与交期双优的优质厂家

当前家居窗饰市场中,窗帘杆产品品质参差不齐、定制能力不足、供货效率低下等问题频发,让消费者和采购商在选择时倍感困扰。众多小型厂家缺乏专业研发团队,产品款式单一,无法满足家庭、写字楼、酒店等不同场景的个性…

大庆建设网站首页优化大师官方下载

1.链表的概念 对于顺序存储的结构最大的缺点就是插入和排序的时候需要移动大量的元素&#xff0c;所以链表的出生由此而来 先上代码&#xff1a; // 链表 public class LinkedList<T extends Comparable> {// 结点类class Node {T ele; // 当前结点上的元素内容Node ne…

2025 年电动窗帘厂家推荐榜单:聚焦国内优质企业定制实力与口碑,为采购者提供最新选择参考电动窗帘系统/电机/轨道/配件/智能电动窗帘厂家推荐

当下智能家居行业蓬勃发展,电动窗帘作为提升居住与办公舒适度的关键产品,市场需求持续攀升。然而,行业乱象却给采购者带来诸多困扰:部分品牌原材料选用不规范,劣质材料导致产品稳定性差、使用寿命短;定制服务能力…

网站推广的技巧wordpress 代码压缩

1.set和map存在的意义 &#xff08;1&#xff09;set和map的底层都是二叉搜索树&#xff0c;可以达到快速排序&#xff08;当我们按照迭代器的顺序来遍历set和map&#xff0c;其实是按照中序来遍历的&#xff0c;是排过序的&#xff09;、去重、搜索的目的。 &#xff08;2&a…

淘宝首页网站怎么做手机短视频制作软件app

目录 一&#xff0c;题目 二&#xff0c;思路 三&#xff0c;代码 一&#xff0c;题目 输入 共2行&#xff0c;第1行是被减数a&#xff0c;第2行是减数b(a > b)。每个大整数不超过200位&#xff0c;不会有多余的前导零。 输出 一行&#xff0c;即所求的差。 样例输入1…

网站建设公司业务望京做网站

目录频率域滤波基础频率域的其他特性频率域滤波基础知识频率域滤波步骤小结空间域和频率域滤波之间的对应关系频率域滤波基础 频率域的其他特性 频率域中的滤波过程如下&#xff1a; 首先修改傅里叶变换以在到特定目的然后计算IDFT&#xff0c;返回到空间域 # 频率域中的其…

专业微网站开发wordpress 用户登陆后跳转到首页

register_shutdown_function注册一个会在php中止时执行的函数&#xff0c;注册一个 callback &#xff0c;它会在脚本执行完成或者 exit() 后被调用。error_get_last获取最后发生的错误&#xff0c;包含type(错误类型)&#xff0c;message(错误消息)&#xff0c;file(发生错误所…

java类加载内存分析

java类加载内存分析加载内存分析 1.加载到内存(方法区(即特殊的堆)存放原始类,加载完成后会产生一个类对应java.lang.class对象代表不同的类存放到堆中,最后在栈中开始main()链接 2.链接,连接结束后静态变量默认…

Vue3 使用注意事项

1.script-setup语法糖下// 获取 emit,注意需要直接在setup范围下,放在具体方法里,可能会因作用域导致获取不到defineEmitsconst emit = defineEmits([quanping-comp]);

ClickHouse ReplacingMergeTree 去重陷阱:为什么你的 FINAL 查询无效? - 若

问题背景 在使用 ClickHouse 的 ReplacingMergeTree 引擎时,很多开发者会遇到一个困惑:明明使用了 FINAL 关键字,查询结果却仍然包含重复数据。比如这样的情况:数据库表err := db.Table(model.BlockTaskTableName)…

js中?? 和 || 的区别详解

?? 和 || 的区别详解 在 JavaScript/TypeScript 中,??(空值合并运算符)和 ||(逻辑或运算符)都用于提供默认值,但它们在处理不同值时有关键区别。 核心区别运算符 名称 触发条件 处理假值的方式?? 空值合并…

微信机器人API接口| 个人开发者必备

微信机器人API接口| 个人开发者必备 微信二次开发个人号api个人微信机器人开发api接口,微信个人号开发API在线接待更高效 在线沟通更快速、更有趣 语音回复 通过电脑端语音回复客户,提高效率 文件传输 支持文字、图片…

直击现场! “ 直通乌镇 ”开源赛复赛收官,OpenCSG担任评委,十强藏着哪些产业机会?

2025年9月16日,备受瞩目的“直通乌镇”全球互联网开源模型应用赛复赛在杭州圆满落幕。浙江省经济和信息化厅相关领导及各界专家、参赛团队代表齐聚一堂,共同见证了这一激动人心的时刻。值得关注的是,今年大赛首次设…

Python 列表生成式、字典生成式与生成器表达式

1. 列表生成式 (List Comprehension) 语法:[expression for item in iterable if condition] 示例:1.基本示例 # 创建平方数列表 squares = [x**2 for x in range(5)] print(squares) # [0, 1, 4, 9, 16]# 创建偶数…

java 解析json字符串,获取特定的字段值,JsonObject

java 解析json字符串,获取特定的字段值,JsonObjectjava 解析json字符串,获取特定的字段值package com.example.core.mydemo.java3;import com.google.gson.Gson; import com.google.gson.JsonObject; import com.go…

python 批量提取txt数据中的值写入csv

我有一堆雨滴谱txt数据,第一行是时间就是2024-05-10 10:21:00这样的格式,第二行是值,第三行是空格,然后第四行又是2024-05-10 10:21:00,第五行是值,第六行是空格,这样循环往复。给我写一个批量提取这些值的pyth…

【读书笔记】架构整洁之道 P5-2 软件架构 - 教程

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

嘉兴 企业网站 哪家厦门网站建设模板

效率工具 推荐一个程序员的常用工具网站&#xff0c;效率加倍嘎嘎好用&#xff1a;程序员常用工具 云服务器 云服务器限时免费领&#xff1a;轻量服务器2核4G腾讯云&#xff1a;2核2G4M云服务器新老同享99元/年&#xff0c;续费同价阿里云&#xff1a;2核2G3M的ECS服务器只需99…

网站建设后台 手工上传网页图片显示不出来打叉

介绍&#xff1a; JavaScript是一种基于对象和事件驱动的编程语言&#xff0c;在Web开发中占据着重要的地位。随着前端技术的不断发展&#xff0c;出现了一系列的框架和库&#xff0c;Vue和React是其中较为知名的两个。 Vue是一个轻量级的JavaScript框架&#xff0c;由尤雨溪…