前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Flask 学习篇一: 搭建Python虚拟环境,安装flask,并设计RESTful API。

Flask 学习篇一: 搭建Python虚拟环境,安装flask,并设计RESTful API。

作者头像
ShenduCC
发布2018-04-27 11:56:11
1.7K0
发布2018-04-27 11:56:11
举报
文章被收录于专栏:算法修养算法修养

前些日子,老师给我看了这本书,于是便开始了Flask的学习

GitHub上的大神,于是我也在GitHub上建了一个Flask的项目。

有兴趣可以看看:

https://github.com/SilentCC/FlaskProject

首先了解Flask是一个Web应用框架,它是用Python写的。 在Flask框架下,我们设计一个RESTful API.

其次了解RESTful ,RESTful 是一种Web架构风格,可以降低开发的复杂性,提高系统的可伸缩性。目前大概有三种主流的Web服务实现方案,SOAP,XML-RPC,REST.现在大多数的网站都是采用REST风格设计和实现。

一般的满足以下约束的基本上符合RESTful的框架。

  1. 使用客户/服务器模型。客户和服务器之间通过一个统一的接口来互相通讯。
  2. 层次化的系统。在一个REST系统中,客户端并不会固定地与一个服务器打交道。
  3. 无状态。在一个REST系统中,服务端并不会保存有关客户的任何状态。也就是说,客户端自身负责用户状态的维持,并在每次发送请求时都需要提供足够的信息。
  4. 可缓存。REST系统需要能够恰当地缓存请求,以尽量减少服务端和客户端之间的信息传输,以提高性能。
  5. 统一的接口。一个REST系统需要使用一个统一的接口来完成子系统之间以及服务与用户之间的交互。这使得REST系统中的各个子系统可以独自完成演化。

现在来搭建Python环境:

首先下载virtualenv : virtualenv 可以创建多个独立的Python运行环境。我们可以先用homebrew 下载virtualenv。

先建立一个文件夹,然后在这个文件夹里执行$ virtualenv flask命令 

这样的话就建立一个名为flask文件夹,这个flask文件夹中就有了Python的运行环境。

我们在这个Python运行环境中用python包管理工具 pip 安装flask

$ flask/bin/pip install flask

 然后Python运行环境和Flask的就完成安装了。

我们在新建一个hello.py 文件在flask文件夹里,或者与flask文件夹同一目录下。里面写上如下内容

#!flask/bin/python
from flask import Flask

app = Flask(__name__)

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

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

#!flask/bin/python 是引用Python环境,这里已经事先设置好了环境变量,也可以写全路径。

启动服务器应该要激活flask 在flask的bin文件夹里,运行activate

$ source activate

出现了(flask)

然后在终端里输入$  ./hello.py 或者$  python hello.py

就可以启动服务了,在浏览器里面输入http://localhost:5000/

可以看到网页了,打印了“Hello,World!”

就目前我对RESTful的理解,自己在开发jsp网页作业的时候,用的服务器是Tomcat 。而这里的hello.py 就是RESTful的服务器,是我们自己可以编辑的。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-05-09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
Serverless HTTP 服务
Serverless HTTP 服务基于腾讯云 API 网关 和 Web Cloud Function(以下简称“Web Function”)建站云函数(云函数的一种类型)的产品能力,可以支持各种类型的 HTTP 服务开发,实现了 Serverless 与 Web 服务最优雅的结合。用户可以快速构建 Web 原生框架,把本地的 Express、Koa、Nextjs、Nuxtjs 等框架项目快速迁移到云端,同时也支持 Wordpress、Discuz Q 等现有应用模版一键快速创建。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档