WSGI 不同路径返回不同内容 & amp;HTTP 状态码 | 学习笔记

简介: 快速学习 WSGI 不同路径返回不同内容 & amp;HTTP 状态码

开发者学堂课程【Python 入门 2020年版:WSGI 不同路径返回不同内容 & amp;HTTP 状态码】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/639/detail/10483


WSGI 不同路径返回不同内容 & amp;HTTP 状态码

内容介绍

一、WSGI 不同路径返回不同内容

二、HTTP 状态码

 

一、WSGI 不同路径返回不同内容

代码:

from wsgiref.simple_server import make_server

def demo_app(environ,start_response):

path=environ[‘PATH_INFO’]

status_code=’200 OK’

if path == '/':

response =’欢迎来到我的首页'

elif path =='/test':

response = '欢迎来到test页面'

elif path == ‘/demo' :

response = '欢迎来到demo页面'

else:

status_code=’404 Not Found’

response = '页面走丢了’

start_response(‘status_code’,[(‘Content-Type,’text/html;charset=utf8’)])

return [‘response’.encode(‘utf8’)]

if_ name_=='_ main_ ':

httpd : make_server(‘’, 8080, demo_app):

sa = httpd.socket. getsockname()

print("Serving HTTP on", sa[0], "port", sa[1], "...")

httpd.serve_forever()  

默认状态码是 200,如果页码没有配置,返回 404

运行:

访问 127.0.0.1:8080/demo,显示欢迎来到 demo 页面

访问 127.0.0.1:8080/index,显示页面走丢了,状态码是 404

OK 和 Not Found 是可以改的,用户是看不到的,但在 network 里可以看到状态,一般访问页面 404 后都会跳转到页面走丢。

 

二、HTTP 状态码

状态码:RESTFUL==>前后端分离

1. 2xx:OK,请求响应成功

2. 3xx:重定向

如图示:

image.png

为什么它是 3 开头的呢,因为它其实是到了 404,但结果进行了跳转就变成 304了。

3. 4xx:客户端的错误。 404 客户端访问了一个不存在的地址 405:请求方式不被允许

4. 5xx:服务器的出错。

例:在欢迎来的我的首页加个 1/0,这个地方服务器会崩。

from wsgiref.simple_server import make_server

def demo_app(environ,start_response):

path=environ[‘PATH_INFO’]

status_code=’200 OK’

response = 'hello'

if path == '/':

1/0

response =’欢迎来到我的首页'

elif path =='/test':

response = '欢迎来到test页面'

elif path == ‘/demo' :

response = '欢迎来到demo页面'

else:

status_code=’404 Not Found’

response = '页面走丢了’

start_response(‘status_code’,[(‘Content-Type,’text/html;charset=utf8’)])

return [‘response’.encode(‘utf8’)]

if_ name_=='_ main_ ':

httpd : make_server(‘ ’, 8080, demo_app):

sa = httpd.socket. getsockname()

print("Serving HTTP on", sa[0], "port", sa[1], "...")

httpd.serve_forever()

重启运行一下服务器

image.png

发现这个错误就是500

注:

为什么配置的地址可以写成空号:httpd : make_server(‘ ’, 8080, demo_app):

如果不写的话就相当于这个地址是 0.0.0.0

相关文章
|
27天前
|
Shell
HTTP状态码解析:在Haskell中判断响应成功与否
HTTP状态码解析:在Haskell中判断响应成功与否
|
2月前
|
SQL 分布式计算 DataWorks
DataWorks操作报错合集之遇到报错:HTTP状态码400,该如何处理
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
6天前
|
前端开发 JavaScript
HTTP学习笔记
HTTP学习笔记
12 1
|
25天前
|
开发者
HTTP状态码是由网页服务器返回的三位数字响应代码,用于表示请求的处理结果和状态
HTTP状态码是由网页服务器返回的三位数字响应代码,用于表示请求的处理结果和状态
24 1
|
8天前
|
测试技术 API
8-20|https://gitlab.xx.com/api/v4/projects/4/trigger/pipeline Request failed 状态码400
8-20|https://gitlab.xx.com/api/v4/projects/4/trigger/pipeline Request failed 状态码400
|
12天前
|
API
探索研究Servlet HTTP 状态码
【9月更文挑战第24天】
27 0
|
2月前
|
缓存 Java Apache
常见的 HTTP 状态码分类及说明
这篇文章介绍了常见的HTTP状态码分类及其说明,包括1xx信息响应、2xx成功、3xx重定向、4xx客户端错误和5xx服务器错误,并提供了一个使用Apache HttpClient进行HTTP POST请求的Java代码示例。
|
2月前
|
缓存 开发者 UED
HTTP状态码
【8月更文挑战第17天】HTTP状态码
47 1
|
3月前
|
缓存 程序员 开发者
HTTP状态码大全:如何读懂服务器的语言?
大家好,我是小米,今天我们来聊聊HTTP协议中的GET和POST请求。它们在数据传输方式、安全性和应用场景上有不同特点。本文将详细解析它们的区别和特点,帮助你更好地理解和运用这两种请求方式。让我们一起学习吧!
43 1
|
2月前
|
网络协议 安全
常见的HTTP响应状态码有哪些?
常见的HTTP响应状态码有哪些?
42 0

热门文章

最新文章

下一篇
无影云桌面