利用deepseek生成一个网页的简单架构

宁睿  论坛元老 | 2025-3-15 00:50:10 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 1036|帖子 1036|积分 3118

python代码如下:

from flask import Flask, render_template, jsonify
app = Flask(name)
#定义要调用的Python函数
def cac_sum():
“”“示例盘算函数”""
str_print = ‘现在打印这个了,哈哈哈哈哈哈’
return {“result”: str_print} # 返回盘算结果
@app.route(’/’)
def index():
return render_template(‘index.html’)
@app.route(’/calculate’, methods=[‘POST’])
def calculate():
return jsonify(cac_sum())
if name == ‘main’:
app.run(debug=True)
分界限=========
html 代码

html
Python函数调用示例 点击按钮调用Python函数

点击盘算  原版

以下是实现该功能的完备步调和代码示例:
团体方案

利用Python Flask框架搭建后端,HTML+JavaScript作为前端,实现前后端交互。

第一步:安装Flask(需Python情况)

  1. pip install flask
复制代码

第二步:项目布局

  1. your_project/
  2. ├── app.py          # 后端代码
  3. ├── templates/
  4. │   └── index.html  # 前端页面
复制代码

第三步:后端代码(app.py)

  1. from flask import Flask, render_template, jsonify
  2. app = Flask(__name__)
  3. # 定义要调用的Python函数
  4. def cac_sum():
  5.     """示例计算函数"""
  6.     return {"result": 3 + 5}  # 返回计算结果
  7. @app.route('/')
  8. def index():
  9.     return render_template('index.html')
  10. @app.route('/calculate', methods=['POST'])
  11. def calculate():
  12.     return jsonify(cac_sum())
  13. if __name__ == '__main__':
  14.     app.run(debug=True)
复制代码

第四步:前端页面(templates/index.html)

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4.     <title>Python函数调用示例</title>
  5.     <script>
  6.         function callPythonFunction() {
  7.             fetch('/calculate', {
  8.                 method: 'POST'
  9.             })
  10.             .then(response => response.json())
  11.             .then(data => {
  12.                 document.getElementById('result').innerHTML = '计算结果:' + data.result;
  13.             })
  14.             .catch(error => console.error('Error:', error));
  15.         }
  16.     </script>
  17. </head>
  18. <body>
  19.     <h1>点击按钮调用Python函数</h1>
  20.     <button onclick="callPythonFunction()">点击计算</button>
  21.     <div id="result"></div>
  22. </body>
  23. </html>
复制代码

第五步:运行与测试


  • 启动Flask服务
  1. python app.py
复制代码

  • 欣赏器访问
  1. http://localhost:5000
复制代码

  • 点击按钮即可看到盘算结果

结果说明



  • 点击按钮后会调用后端cac_sum()函数
  • 背景盘算结果会通过JSON格式返回
  • 前端利用fetch API获取结果并显示
  • 每次点击都会重新盘算结果

扩展建议


  • 要修改盘算逻辑,直接修改cac_sum()函数内容
  • 可添加加载动画(在fetch时显示加载中状态)
  • 可添加错误处理处罚机制
  • 生产情况建议关闭debug模式
  • 可添加参数通报功能(例如让用户输入盘算数值)
这个方案实现了基本的网页调用Python函数功能,可以根据实际需求进一步扩展功能。
服务器访问方式

要实现通过公网IP让所有人访问你的Flask网页应用,需要以下步调:

第一步:基础配置

1. 修改Flask监听地址

在启动应用时添加host=0.0.0.0参数:
  1. if __name__ == '__main__':
  2.     app.run(host='0.0.0.0', port=5000, debug=False)  # 关闭调试模式
复制代码
2. 开放服务器防火墙端口



  • Linux(示例为Ubuntu):
    1. sudo ufw allow 5000/tcp
    2. sudo ufw reload
    复制代码
  • Windows
    控制面板 → 系统和安全 → Windows Defender防火墙 → 高级设置 → 入站规则 → 新建规则开放5000端口

第二步:生产级摆设(保举方案)

建议利用Nginx反向署理 + Gunicorn摆设方案:
1. 安装依赖

  1. pip install gunicorn
  2. sudo apt install nginx  # Linux
复制代码
2. 通过Gunicorn启动应用

  1. gunicorn -w 4 -b 0.0.0.0:8000 app:app
复制代码
3. 配置Nginx反向署理

创建配置文件/etc/nginx/sites-available/flask_app:
  1. server {
  2.     listen 80;
  3.     server_name your_server_ip;  # 填写实际IP或域名
  4.     location / {
  5.         proxy_pass http://127.0.0.1:8000;
  6.         proxy_set_header Host $host;
  7.         proxy_set_header X-Real-IP $remote_addr;
  8.         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  9.     }
  10. }
复制代码
4. 启用配置

  1. sudo ln -s /etc/nginx/sites-available/flask_app /etc/nginx/sites-enabled/
  2. sudo nginx -t  # 测试配置
  3. sudo systemctl restart nginx
复制代码

第三步:安全加固

1. 配置HTTPS(强制保举)

利用Let’s Encrypt免费证书:
  1. sudo apt install certbot python3-certbot-nginx
  2. sudo certbot --nginx -d your_server_ip
复制代码
2. 防火墙设置

仅开放须要端口:
  1. sudo ufw allow 80/tcp
  2. sudo ufw allow 443/tcp
  3. sudo ufw deny 5000/tcp  # 关闭原始端口
复制代码

第四步:运行维护

1. 进程守护(示例用systemd)

创建服务文件/etc/systemd/system/flask_app.service:
  1. [Unit]Description=Gunicorn instance for Flask AppAfter=network.target[Service]User=ubuntuGroup=www-dataWorkingDirectory=/path/to/your/projectExecStart=/usr/local/bin/gunicorn -w 4 -b 0.0.0.0:8000 app:app
  2. [Install]WantedBy=multi-user.target
复制代码
2. 启动服务

  1. sudo systemctl daemon-reload
  2. sudo systemctl start flask_app
  3. sudo systemctl enable flask_app
复制代码

访问方式



  • 通过欣赏器访问:
    1. http://your_server_ip       # HTTP
    2. https://your_server_ip      # HTTPS
    复制代码

注意事项


  • 生产情况务必关闭debug=True
  • 建议利用非root用户运行服务
  • 定期更新服务器系统和Python依赖
  • 监控服务器资源利用情况(可利用htop)
  • 紧张数据建议配置自动备份
通过以上步调,你的Flask应用即可安全地对外提供服务。如果需要更专业的摆设方案(如Docker化、负载平衡),可进一步说明需求。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

宁睿

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表