Python实现Restful API

发布时间:2019-09-12 07:58:26编辑:auto阅读(2039)

    Python实现Restful API


    最近写了一个网络验证登录的爬虫,需要发布为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"

关键字