Python实现Restful API的例子

yipeiwu_com6年前Python基础

最近写了一个网络验证登录的爬虫,需要发布为Rest服务,然后发现Flask是一个很好的Web框架,使用Python语言实现。

1. 安装flask

pip install flask

2.编写简单的HelloWorld

app.py

from flask import Flask

app = Flask(__name__)

@app.route('/')
def index():
  return "Hello, World!"

if __name__ == '__main__':
  app.run(debug=True)

3.实现登录验证Rest服务

login.py 是用爬虫写好的登录模块类

from flask import Flask
from flask import request

from login import Context
from login import NormalLogin

app = Flask(__name__)

@app.route('/cm/api/v1.0/verifyuser', methods=['POST'])
def verifyUser():
  error = None
  if request.method == 'POST':
    login = NormalLogin()
    ctx = Context(login)
    page = ctx.login(request.form['studentId'],
        request.form['password'])
    if page == "success":
      return "success, 验证成功"

  return "failed, 验证失败"

if __name__ == '__main__':
  app.run(debug=True)

启动web服务,python app.py

在浏览器输入http://127.0.0.1:5000/即可看到Hello, World!

另外对于POST方法的测试,用浏览器就不太方便了,可以在Linux中安装curl工具来进行测试,或者使用一些专门的GUI程序,比如Postman

curl -d "studentId=123456&password=123456" "http://127.0.0.1:5000/cm/api/v1.0/verifyuser"

以上这篇Python实现Restful API的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python判断直线和矩形是否相交的方法

本文实例讲述了Python判断直线和矩形是否相交的方法。分享给大家供大家参考。具体实现方法如下: """ A(ax,ay),B(px,py)为两个点 (x1,y1),(x2,y2)为...

Python的Flask框架中实现简单的登录功能的教程

 回顾 在前面的系列章节中,我们创建了一个数据库并且学着用用户和邮件来填充,但是到现在我们还没能够植入到我们的程序中。 两章之前,我们已经看到怎么去创建网络表单并且留下了一个实...

python数据类型_元组、字典常用操作方法(介绍)

元组 Python的元组与列表类似,不同之处在于元组的元素不能修改。 元组使用小括号,列表使用方括号。 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。 tp=(1,2,...

对python中raw_input()和input()的用法详解

最近用到raw_input()和input()来实现即时输入,就顺便找了些资料来看,加上自己所用到的一些内容,整理如下: 1、raw_input() raw_input([promp...

Numpy 中的矩阵求逆实例

1. 矩阵求逆 import numpy as np a = np.array([[1, 2], [3, 4]]) # 初始化一个非奇异矩阵(数组) print(np.linalg...