低代码和零代码>postsecondary
三、Pythonweb开发⼊门
⼀、web开发介绍
1、web开发概述
c/s结构和b/s结构,客户机/服务器结构和浏览器/服务器结构即w eb开发。b/s结构的优势:
不⽤通知客户端安装某个软件
不需要通知客户端升级
可以轻松的实现跨平台。
访问⽹站的过程:⽤户向w eb服务器发送请求,然后返回⼀个H TML⽂件。静态⽹站:直接返回HTML⽂件给⽤户。
动态⽹站:⽤户请求->执⾏Python程序(与数据库进⾏交互)->执⾏结果->返回HTML给⽤户。
采⽤mvc设计w eb应⽤:
m: model模型,存储web应⽤数据的代码
v: view视图,格式化和显⽰web应⽤的⽤户界⾯的代码
c: controller控制器,将web应⽤粘合在⼀起并提供业务逻辑的代码。
CGI:
common gateway interface
如何生成不重复的随机数可以让⼀个客户端,从⽹页浏览器向服务器请求数据。这是描述客户端和服务器程序之间传输数据的⼀个标准。
应⽤于w eb的编程语⾔:
PHP
ASP/ASP
JSP
Python。
2、web应⽤的结构
w eb应⽤结构概览:
前端程序:HTML、CSS、js(混合使⽤)
后台程序:Python、PHP、JSP(只有⼀种就可以)
数据库:MySQL(关系型数据库)、mongodb(⾮关系型数据库)。
前端:
HTML  超⽂本标记语⾔,不是被执⾏,⽽是被渲染
CSS 层叠样式表,规定样式
js  和JAVA并没有联系。
数据库及静态存储:
MySQL
sqlite
mongodb。
3、HTML和JavaScript的简单介绍
⽬标:python编程基础电子版
使⽤HTML语⾔和js语⾔,编写程序,使其可以完成两个整数的加法。并将结果输出在HTML页⾯中。
html页⾯
js⽂件
⼆、⽤Python进⾏CGI编程
1、CGI介绍
m mo
CGI是运⾏在服务器上的程序,提供同客户端H TML页⾯的接⼝。它的全称是 c o mm o n
ga tew a y inter fa c e(通⽤⽹关接⼝)
CGI程序可以是Pytho n脚本,Perl脚本,c或者c++程序等。换句话说,CGI程序是不限定适⽤语⾔的。
历史:
1993年由ncsa开发(跟我⼀样⼤,哈哈)
1997年制定了CGI1.1规范。
CGI⼯作原理:
浏览器访问URL并连接到web服务器
web服务器接收到请求信息后会解析URL,并查访问的⽂件在服务器上是否存在,如果存在就返回⽂件的内容,否则返回错误信息
浏览器从服务器上接收信息,并显⽰接收的⽂件或者错误信息。
缺点及改进:
每次的CGI请求都要求⽣成⼀个程序的副本来进⾏
fastcgi-先编译
mod_perl-将解释器作为模块集成在web服务器中
使⽤c等编译语⾔。
CGI中的环境变量:
CGI程序都接收⼀些环境变量,这些环境变量⾮常有⽤,例如:
content_type:指⽰传递来信息的类型
http_cookie:客户机的cookie内容
remote_addr:发送请求的客户机的IP地址
request_method:脚本被调⽤的⽅法,如get和post⽅法。
get⽅法和po st⽅法:
浏览器客户端通过两种⽅法向服务器传递信息,这两种⽅法就是get⽅法和post⽅法
get⽅法发送⽤户信息到服务端,数据信息包含在请求URL上,以?分割。例如:
get请求可被浏览器缓存
get请求会保存在历史记录中
get请求有长度限制
get请求不应⽤于敏感场合
get请求只应当⽤于取回数据
使⽤post⽅法向服务器传递数据是更安全可靠的,像⼀些敏感数据如⽤户密码等需要使⽤post传输post请求会包含在http请求的头中
post请求不会显⽰在URL中。
2、Python中的web服务器
Pytho n⾃带的w eb服务器:
Python⾃带的包可以建⽴简单的web服务器
basehttpserver:提供基本的web服务器和处理类
simplehttpserver:包含执⾏get请求的simpleHttprequestHandler类
CGIHttpServer:包含处理post请求和执⾏的CGIhttprequesthandler类。
⽰例:
使⽤Apa c he:
Apache是Apache软件基⾦会的⼀个开源⽹页服务器软件。同样由ncsa开发。游戏新闻网站模板
Apache可以通过简单的API扩充将Python解释器编译到服务器中。
市场占有率达到53.67%(2009 netcraft)
第⼀个CGI程序:
创建⽬录
怎么开发一个安卓app编写CGI程序
开启服务器
使⽤浏览器访问
3、实战:⽤CGI编写加法器
⽬标:
使⽤Python语⾔,使⽤get请求和post请求,配合HTML和js程序,完成之前的加法器。并开启服务器,使得其他⼈可以进⾏访问。
创建模板⽂件

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。