兼职程序员居然都能拿到25k一个月!使用Python搭建简单的服务器
导读:本文共1068.5字符,通常情况下阅读需要4分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要:在服务器目录里随便丢了个index.html,浏览器访问http://127.0.0.1:8000/index.html:成功!第二步,用Python代码跑服务器命令行一句话的事,用代码当然也很简单:获取访问地址后,当然是根据后缀名区分请求类型并各自处理咯。结合需求和逻辑,服务器需要依照先后顺序判断并处理以下几类:1.请求的文件不存在时,抛回错误页面并提示错误原因;2.请求指向某个数据接口时,执行... ...
目录
(为您整理了一些要点),点击可以直达。在服务器目录里随便丢了个index.html,浏览器访问http://127.0.0.1:8000/index.html:
成功!
第二步,用Python代码跑服务器
命令行一句话的事,用代码当然也很简单:
获取访问地址后,当然是根据后缀名区分请求类型并各自处理咯。
结合需求和逻辑,服务器需要依照先后顺序判断并处理以下几类:
1.请求的文件不存在时,抛回错误页面并提示错误原因;
2.请求指向某个数据接口时,执行指定的python脚本并返回结果;
3.请求指向某个文件时,返回该文件;
4.以上情况皆不符合,抛回错误页面并提示错误原因。
项目中对这些请求分别建立包含test和act两个方法的类并一次调用,类似于:
接下来就是实现每种请求的处理啦!以下几个是重点:
第五步,请求指定文件
前面已经拿到了请求文件的绝对地址,通过文件IO方法即可判断目标文件是否存在。
若文件存在,则读取文件内容并写入请求文件对象(通过self.wfile获取),对终端来说即是返回了该文件。
html文件里通常会包含css、js、图片、音频等各种引用,但实际访问时浏览器会自动对其所有引用文件单独发起get请求,所以服务器这边无需特殊对待,当做数个独立的文件请求来处理就行。
但是要注意,如果地址是类似url?param1=value1¶m2=value2的形式,判断和返回文件内容时需要先把后面的参数部分截掉。代码如下:
假如用到了其他类型文件,从网上找到对应的mimetype加进去就好。
往文件夹里丢了张小图片,试着访问下:
再试试访问下包含这个文件的页面:
成功!
最后一行send_content方法的功能是返回纯文本作为请求结果,其实就是一个mimetype为text/html的文件输出:
附上示例脚本:
访问个空地址试一试:
成功!
至此,全部功能完成。鞠躬。
兼职程序员居然都能拿到25k一个月!使用Python搭建简单的服务器的详细内容,希望对您有所帮助,信息来源于网络。