美文网首页
Flask初试

Flask初试

作者: HCong | 来源:发表于2017-02-24 16:20 被阅读12次

前言

初次学习python,这里主要是记录一下学习当中遇到的遇到的问题以及经验,诸多部分是对前辈的借鉴。

  • 环境搭建
    1. 使用virtualenv创建一个纯净的python环境,避免污染全局环境
    sudo easy_install virtualenv
    virtualenv venv  // venv环境名
    
    1. 激活虚拟环境
      source venv/bin/activate
    2. 安装flask
      pip install flask
  • server模块
#! /usr/bin/python
#-*- coding:utf-8 -*-
#server模块
from uuid import uuid4
from time import time
import json
class server:
    """docstring for server"""
    def __init__(self, content):
        self.id = str(uuid4())
        self.content = content
        self.is_finished = False
        self.created_at = time()
        self.finished_at = None

    def finish(self):
        self.is_finished = True
        self.finished_at = time()

    def jsonMe(self):
        return json.dumps({
            'id':self.id,
            'content':self.content,
            'is_finished':self.is_finished,
            'finished_at':self.finished_at,
            'created_at':self.created_at
        })
  • 开启服务
#! /usr/bin/python
# -*- coding:utf-8 -*-
from flask import Flask,abort,request,Response,g
from flask import jsonify
from hcserver.server import *
#                               模块
# 在这里server为说需要调用的模块
# 1.将server.py和servertest.py放到同一目录下,引入模块:import server 或 from server import * 
#
# 2.可以在servertest.py目录下创建一新文件夹,文件夹下放有多个模块(即多个.py文件),这种情况下,需要在
# 给文件夹下创建__init__.py文件,或空或为python代码,这样便成为一个包package
# 引入模块:import folder.server 或 from folder.server import *
// 创建服务器实例
app = Flask(__name__)
servers = {} #服务列表
get_server = lambda ser:servers.get(ser,False) #获取servers里的服务,若找不到,默认值为False
@app.route('/servers')
def show():
    return jsonify(data = [ser.jsonMe() for ser in servers.values()])
@app.route('/servers',methods=['POST'])
def add():
    content = request.args.get("content",None)
    if not content:
        abort(400)
    ser = server(content)
    servers[ser.id] = ser
    return Response()
# <serid>表示此请求会传入一个值serid
@app.route('/servers/<serid>/finished',methods=['PUT'])
def finish(serid):
    ser = get_server(serid)
    # 查不到数据
    if not ser:
        abort(404)
    ser.finish()
    return Response()
@app.route('/servers/<serid>',methods=['DELETE'])
def delete(serid):
    ser = get_server(serid)
    #查不到数据
    if not ser:
        abort(404)
    # python的字典操作
    # 1.clear servers.clear() 字典清空
    # 2.pop   servers.pop(key) 移除字典对应key的键值对
    # 3.popitem servers.popitem() 随机返回并删除字典中的一对键和值(项),在工作时如果遇到需要逐一删除项的工作,用popitem()方法效率很高。
    servers.pop(serid)
    return Response()
if __name__ == '__main__':
    app.run(host='0.0.0.0',port=8000)

相关文章

  • Flask初试

    前言 初次学习python,这里主要是记录一下学习当中遇到的遇到的问题以及经验,诸多部分是对前辈的借鉴。 环境搭建...

  • 初试Flask

    成功了!跟着大佬的代码和指令一步一步走。 (最开始调各种不知名的bug累死我了~)

  • 初试flask框架

    使用win+R打开cmd 用pip安装virtualenv 用pip安装flask 创建虚拟环境 1.在想创建虚拟...

  • 《flask Web 开发》读书笔记 & chapter

    概念剖析jinja2初试jinjia2 传入复杂变量常用过滤器模板中的 block 和继承机制 使用 Flask-...

  • Flask-Mail 发送邮件

    Flask 发送邮件 @(Flask)[Flask开发|Flask-Mail] 使用flask-mail扩展发送电...

  • Flask 开发中的踩坑

    flask中常用的包有: Flask Flask-Cache Flask-DebugToolbar Flask-E...

  • 第一个Flask程序

    #从flask这个框架导入flask这个类 from flask import Flask #初始化一个FLASK...

  • 解决Flask+Vue跨域请求问题

    配置Flask# 安装flask_corspip install flask_corsfrom flask_cor...

  • 服务器 flask用法

    tmux new -s flask export FLASK_APP=flask/hello.py flask r...

  • flask入门

    Flask入门 Flask入门WEB工作原理Flask框架flask_script扩展蓝本(blueprint) ...

网友评论

      本文标题:Flask初试

      本文链接:https://www.haomeiwen.com/subject/hfubwttx.html