当前位置: 首页>前端>正文

flask教程

flask教程

第一课

0)下载python 配置环境变量

1)打开某文件夹,创建新文件夹,进入该新建文件夹

2)从该处打开pycharm(事先下载,社区版即可)

3)setting interpreter 选择指定解释器

4)ctrl+f12 打开控制台

4+) 如果不是从该新建文件夹进的pycharm 需要cd切换到目标路径

5)看一下是否是想要的解释器版本

python --version

6)如果不是 比如我想改为用指定路径的解释器 需要指定该解释器路径 例如如

 d:\python38\python --version

7)创建虚拟环境

d:\python38\python -m venv .env

8)进入虚拟环境

.env\Scripts\activate

8+) 可以检查一下虚拟环境的解释器版本是不是你想要的

python --version

9)安装flask

pip install flask

10)新建app.py文件

11)写入以下内容 以post请求为例 写在根节点

from flask import Flask, request, jsonify


app = Flask(__name__)


@app.route('/', methods=['POST'])
def main():
    input = request.get_json()
    return jsonify(input)


if __name__ == "__main__":
    app.run(host="0.0.0.0", debug=True)  # 默认port 5000

12 ) 在控制台运行这个url

py app.py

15 ) 在控制台点+号或者按ctrl+shift+t 新建控制台页面

16)进入虚拟环境

.env\Scripts\activate

17) 安装request 用于发送请求

pip install requests

18 ) 新建post.py文件

19 ) 写入以下内容

import requests


def post(input=None, url=None):
    input = input if input else str(input)
    url = str(url) if url else "http://localhost:5000"
    response = requests.post(url, json=input)  # dict, json_string, list, tuple
    try:
        result = response.json()
        return result
    except requests.exceptions.RequestException:
        response.raise_for_status()
        raise Exception(response.text)


if __name__ == "__main__":
    result = post()
    print(result)

20 ) 在控制台运行 py post.py 就完成了一次请求测试

21 ) 如果是get请求 可以直接在浏览器地址栏上进行测试 此处略

22 ) 可以直接关闭pycharm 也可以先去app.py所在的控制台按ctrl+c关掉它 再关闭pycharm

23 ) 知识点:

jsonify函数 将input生成为response对象 供post函数解析

可以用request.method方法获取请求类型 

建议每个函数都去查一下其参数、结果、方法、属性,再去使用哈

第二课

0) 每次重新打开项目 都需要进入虚拟环境

.env\Scripts\activate

1 ) 我想要对app.py增加一个处理函数 将input转为其他结果

在 Python 中,使用 requests.post() 函数发送 POST 请求时,你可以通过 json 参数传递多种类型的数据。这个参数允许你将数据以 JSON 格式提交给服务器。以下是一些常见的用法:

  1. 字典类型数据:你可以直接传递一个 Python 字典作为 json 参数。例如:
import requests
import json

url = "http://example.com/api"
payload = {"key1": "value1", "key2": "value2"}
response = requests.post(url, json=payload)
  1. JSON 字符串:如果你已经有一个 JSON 格式的字符串,你可以将它传递给 json 参数。例如:
import requests
import json

url = "http://example.com/api"
json_string = '{"key1": "value1", "key2": "value2"}'
response = requests.post(url, json=json.loads(json_string))
  1. 其他可序列化为 JSON 的数据类型:除了字典和字符串,你还可以传递其他可序列化为 JSON 的数据类型,1. 例如列表、元组等。
  2. 总之,json 参数让你方便地将数据以 JSON 格式发送给服务器,无需手动设置请求头或编码数据。¹1 ²2 ³3 ⁴4
  3. 源: 与必应的对话, 2024/4/28
  4. (1) Python 中request以json形式发送post请求 - 知乎 - 知乎专栏. https://zhuanlan.zhihu.com/p/109486247.
  5. (2) Python requests.post方法中data与json参数区别详解 - 腾讯云. https://cloud.tencent.com/developer/article/1738491.
  6. (3) (Python)requests模块post请求发送json类型数据的两种方式. https://blog.csdn.net/qq_40272386/article/details/105658398.
  7. (4) 深入理解POST请求的三种参数:params、data和json-百度开发者中心. https://developer.baidu.com/article/details/2857777.
  8. (5) Python接口自动化-requests模块之post请求 - 知乎 - 知乎专栏. https://zhuanlan.zhihu.com/p/140372568.
  9. (6) undefined. http://jinbao.pinduoduo.com/network/api/common/goodsList.

https://www.xamrdz.com/web/2dj1937536.html

相关文章: