返回顶部
首页 > 资讯 > 后端开发 > Python >如何将python代码生成API接口
  • 802
分享到

如何将python代码生成API接口

2024-04-02 19:04:59 802人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

目录python代码生成api接口1. 安装flask2. 编写Flask应用3. 运行该Flaks应用4. 使用该接口Python写api接口实战操作步骤源码举例请求方式获取请求参

python代码生成API接口

如果要将我们写好的Python代码生成API接口时,我们需要借助Flask框架

1. 安装Flask

pip install Flask

2. 编写Flask应用

(1)新建python文件 app.py(注意创建的Python文件名不能为flask.py,这会与Flask 本身发生冲突)

(2)在新建的文件里写下如下内容:

#app.py
from flask import Flask
app = Flask(__name__)
@app.route('/test',methos=['post'])
def hello_world():
    return 'Hello, World!'
if __name__ == '__main__':
    app.run(debug=True)

首先我们导入了 Flask 类,接着我们创建一个该类的实例。第一个参数是应用模块或者包的名称。

如果你使用 一个单一模块(就像本例),那么应当使用 name ,因为名称会根据这个 模块是按应用方式使用还是作为一个模块导入而发生变化(可能是 ‘main’ , 也可能是实际导入的名称)。

这个参数是必需的,这样 Flask 才能知道在哪里可以 找到模板和静态文件等东西。然后我们使用 route() 装饰器来告诉 Flask 触发函数的 URL 。函数名称被用于生成相关联的 URL 。函数最后返回需要在用户浏览器中显示的信息。

3. 运行该Flaks应用

(1)在终端里导出 FLASK_APP 环境变量:

$ export FLASK_APP=app.py

(2)运行该程序

$ flask run 1. Running on Http://127.0.0.1:5000/

4. 使用该接口

使用过Postman(一个接口测试工具)进行测试:

这将会得到返回结果“Hello, World!”

至此,我们完成了一个简单的将Python代码生成API接口的实例!

更多内容请参考Flask官方文档:

Flask官方文档

python写api接口实战

操作步骤

1. 导入:import flask,JSON

2. 实例化:api = flask.Flask(name)

3. 定义接口访问路径及访问方式:@api.route(’/index’,methods=[‘get/post/PUT/DELETE’])

4. 定义函数,注意需与路径的名称一致,设置返回类型并支持中文:def index(): return json.dumps(ren,ensure_ascii=False)

5. 三种格式入参访问接口:

  • 5.1 url格式入参:flask.request.args.get(‘id’)
  • 5.2 fORM-data格式入参:pwd = flask.request.values.get(‘pwd’)
  • 5.3 josn格式入参:pwd = flask.request.json.get(‘pwd’)

6. 启动服务:api.run(port=8888,debug=True,host=‘127.0.0.1’),开启服务之后,就可以通过ip+端口+路径+入参访问接口

源码举例

#!/usr/bin/python3
# encoding:utf-8
import flask,json
# 实例化api,把当前这个python文件当作一个服务,__name__代表当前这个python文件
api = flask.Flask(__name__) 
 
# 'index'是接口路径,methods不写,默认get请求     
@api.route('/index',methods=['get']) 
# get方式访问
def index():
  ren = {'msg':'成功访问首页','msg_code':200}
  #json.dumps 序列化时对中文默认使用的ascii编码.想输出中文需要指定ensure_ascii=False
  return json.dumps(ren,ensure_ascii=False)
 
#post入参访问方式一:url格式参数
@api.route('/article',methods=['post']) 
def article():
  #url格式参数?id=12589&name='lishi'
  id = flask.request.args.get('id')
   
  if id:
    if id == '12589':
      ren = {'msg':'成功访问文章','msg_code':200}
    else:
      ren = {'msg':'找不到文章','msg_code':400}
  else:
    ren = {'msg':'请输入文章id参数','msg_code':-1}
  return json.dumps(ren,ensure_ascii=False)
 
#post入参访问方式二:from-data(k-v)格式参数
@api.route('/login',methods=['post'])
def login():
  #from-data格式参数
  usrname = flask.request.values.get('usrname')
  pwd = flask.request.values.get('pwd')
   
  if usrname and pwd:
    if usrname =='test' and pwd =='123456':
      ren = {'msg':'登录成功','msg_code':200}
    else:
      ren = {'msg':'用户名或密码错误','msg_code':-1}
  else:
    ren = {'msg':'用户名或密码为空','msg_code':1001}
  return json.dumps(ren,ensure_ascii=False)
 
#post入参访问方式二:josn格式参数  
@api.route('/loginjosn',methods=['post'])
def loginjosn():
  #from-data格式参数
  usrname = flask.request.json.get('usrname')
  pwd = flask.request.json.get('pwd')
   
  if usrname and pwd:
    if usrname =='test' and pwd =='123456':
      ren = {'msg':'登录成功','msg_code':200}
    else:
      ren = {'msg':'用户名或密码错误','msg_code':-1}
  else:
    ren = {'msg':'用户名或密码为空','msg_code':1001}
  return json.dumps(ren,ensure_ascii=False)
 
if __name__ == '__main__':
  api.run(port=8888,debug=True,host='127.0.0.1') # 启动服务
  # debug=True,改了代码后,不用重启,它会自动重启
  # 'host='127.0.0.1'别IP访问地址

运行结果:

 * Serving Flask app 'monitor' (lazy loading)
 * Environment: production
   WARNING: This is a development server. Do not use it in a production deployment.
   Use a production WSGI server instead.
 * Debug mode: on
 * Restarting with stat
 * Debugger is active!
 * Debugger PIN: 991-833-116
 * Running on http://127.0.0.1:8888/ (Press CTRL+C to quit)
127.0.0.1 - - [16/Jan/2022 14:05:53] "POST /login?usrname=test&pwd=123456 HTTP/1.1" 200 -
127.0.0.1 - - [16/Jan/2022 14:08:34] "GET /index HTTP/1.1" 200 -

请求方式

使用postman测试接口是否可行

如:

url:127.0.0.1:8888/login

参数:usrname=test;pwd=123456

获取请求参数的几种方法

flask.request.form.get("key", type=str, default=None) 获取表单数据,
flask.request.args.get("key") 获取get请求参数,
flask.request.values.get("key") 获取所有参数。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: 如何将python代码生成API接口

本文链接: https://lsjlt.com/news/120780.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 如何将python代码生成API接口
    目录python代码生成API接口1. 安装Flask2. 编写Flask应用3. 运行该Flaks应用4. 使用该接口python写api接口实战操作步骤源码举例请求方式获取请求参...
    99+
    2024-04-02
  • 淘宝无痕下单生成器一拖多入口生成器(附api生成接口以代码)
    淘宝无痕下单生成器的用途是:通过无痕下单生成器生成的二维码,用户通过扫码直接无痕下单的,电商后台只显示成交关键词,但是没有关键词路径,什么都没有,没有痕迹,即使通过淘宝生意参谋流量路径、访客人数等数据都无法显示。可快速带动关键词搜索权重,获...
    99+
    2023-10-05
    java 开发语言 python 爬虫 服务器
  • Python如何使用文件接口生成二维码?
    Python是一种高级编程语言,因其简单易学和强大的功能而被广泛使用。其中,Python的文件接口是非常强大的,可以用来处理各种文件类型,包括生成二维码。 在本文中,我们将介绍如何使用Python文件接口生成二维码。我们将首先介绍二维码的基...
    99+
    2023-10-09
    文件 接口 二维码
  • golang怎么自动生成api接口
    在golang中,可以使用开源的工具和库来自动生成API接口的代码。以下是一种常见的方法:1. 使用Swagger/OpenAPI规...
    99+
    2023-09-27
    golang
  • python+flask+eventSource打造流式chatGPT生成式API接口
    后端用python,前端用web,怎么打通chatGPT API连接? 如果你遇到这样的情况: 科学上网登chat.openai.com开启一个新聊天,总是出现网页错误,刷新几次就没有对话的想法了。 获取了chatGPT的APIkey,...
    99+
    2023-09-02
    flask python 后端
  • IDEA中WebService如何生成Java代码并调用外部接口
    小编给大家分享一下IDEA中WebService如何生成Java代码并调用外部接口,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!最近一个Spring项目中需要调用...
    99+
    2023-06-15
  • python调用api接口的代码怎么写
    你可以使用`requests`库来调用API接口,下面是一个简单的示例代码:```pythonimport requestsurl ...
    99+
    2023-08-30
    python
  • Python API 和 Windows:如何快速生成二维码?
    二维码(QR Code)是一种二维码码制,是由日本的 Denso Wave 公司于1994年发明的。随着智能手机的普及,二维码已经成为了一种非常方便的信息传递方式。二维码可以存储大量的数据,例如网址、联系方式等等。在本篇文章中,我们将介绍...
    99+
    2023-05-26
  • SpringBoot如何根据目录结构生成API接口前缀
    目录一、根据目录结构生成接口前缀二、自定义RequestMappingInfo三、测试一、根据目录结构生成接口前缀 在写api的接口时,通常有很多版本的迭代,比如:v1、v2。 如图...
    99+
    2024-04-02
  • php和python怎么调用短网址生成api接口
    这篇文章主要介绍“php和python怎么调用短网址生成api接口”,在日常操作中,相信很多人在php和python怎么调用短网址生成api接口问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php和pytho...
    99+
    2023-06-04
  • python如何调用api接口
    要调用 API 接口,可以使用 Python 中的 requests 库。以下是一个简单的示例:```pythonimport re...
    99+
    2023-09-07
    python
  • python如何封装api接口
    在Python中,可以使用类和函数来封装API接口。下面是两种常见的封装方式:1. 使用类封装API接口:```pythonimpo...
    99+
    2023-10-11
    python
  • Java API中如何生成二维码?
    二维码是一种矩阵条码,它是由黑白相间的小方块组成的。二维码是一种可以编码许多信息的二进制图形码,它可以用于商业、广告、文化、教育等各个领域。在Java中,我们可以使用一些API来生成二维码。本文将介绍如何使用Java API生成二维码。 ...
    99+
    2023-06-15
    api linux 二维码
  • php mysql APP接口 移动端接口API M-API 开源代码
    开源协议:Apache License 2.0源码地址:https://github.com/movie0312/M-API.gitM-API概述... 1 一、   ...
    99+
    2024-04-02
  • 如何在 Windows 上使用 Python API 生成二维码?
    二维码(QR Code)是一种二维编码,可以将信息编码成黑白图案,用于快速识别。在现代社会中,二维码已经广泛应用于支付、物流、票务等领域。Python 是一种广泛使用的编程语言,它有丰富的库和 API,可以轻松生成二维码。本文将介绍如何在...
    99+
    2023-05-26
  • 一文详解如何在前端中动态生成API接口
    本篇文章给大家带来了关于前端的相关知识,其中主要介绍了怎么在前端中动态的生成API接口 ,下面一起来看一下,希望对大家有帮助。在ts横行的时代,接口请求和返回参数定义类型成了繁琐的一件事情,在这样的情况下,我们可以通过node服务,来进行自...
    99+
    2023-05-14
    node API
  • python实现自动生成C++代码的代码生成器
    遇到的问题 工作中遇到这么一个事,需要写很多C++的底层数据库类,但这些类大同小异,无非是增删改查,如果人工来写代码,既费力又容易出错;而借用python的代码自动生成,可以轻松搞定...
    99+
    2024-04-02
  • 如何查询chatgpt-API-KEY接口的使用额度,代码php和python源码
    ChatGPT是一款由OpenAI开发的强大自然语言处理模型,可以帮助开发者实现各种自然语言相关的应用场景。为了能够使用ChatGPT,开发者需要通过OpenAI获取API-KEY,然后才能使用模型接口进行开发。 但是,在使用ChatG...
    99+
    2023-08-31
    chatgpt
  • SpringMVC Restful api接口实现的代码
    【前言】面向资源的 Restful 风格的 api 接口本着简洁,资源,便于扩展,便于理解等等各项优势,在如今的系统服务中越来越受欢迎。.net平台有WebAPi项目是专门用来实现Restful api的,其良好的系统封装,简洁优雅的代码实...
    99+
    2023-05-31
    springmvc restful api
  • IDEA中WebService生成Java代码并调用外部接口实现代码
    最近一个Spring项目中需要调用其他第三方系统的接口对接数据,对方只给了一个wsdl地址,我们需要根据给的wsdl地址,自己来生成里边的接口等调用接口所需要的类,来调用接口实现数据...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作