我已经使用Flask设计了一个rest API,我想在python中创建一个简单的Web服务器来获取和发布数据。如何在python中创建Web服务器?我不想使用curl和localserver 5000
答案 0 :(得分:2)
对于Linux 打开终端并输入:
$ cd /home/somedir
$ python -m SimpleHTTPServer
现在您的http服务器将从端口8000
开始。您将收到消息:
Serving HTTP on 0.0.0.0 port 8000 ...
现在打开浏览器并输入以下地址:
http://your_ip_address:8000
您也可以通过以下方式访问它:
http://127.0.0.1:8000
或
http://localhost:8000
另请注意:
如果目录中有一个名为index.html的文件,该文件将作为初始文件提供。如果没有index.html,则将列出目录中的文件。
如果您希望更改已使用的端口,请通过以下方式启动该程序:
$ python -m SimpleHTTPServer 8080
将端口号更改为您想要的任何内容。
答案 1 :(得分:1)
在python3上,命令为python3 -m http.server
Google搜索很容易引导您this post
答案 2 :(得分:0)
要在python中创建一个简单的HTTP网络服务器,请使用内置的SimpleHTTPServer模块,如下所示:
python -m SimpleHTTPServer 8080
其中8080是端口号。
答案 3 :(得分:0)
对于非常简单的选项,根据给出的单行。对于可以在 asyncio 框架中轻松扩展的内容,从当前文件夹(因此是 os.path)提供文件是一个不错的开始。
import asyncio
from aiohttp import web
from os.path import abspath, dirname, join
async def main():
app = web.Application()
app.add_routes([
web.static('/', abspath(join(dirname(__file__))))
])
runner = web.AppRunner(app)
await runner.setup()
await web.TCPSite(runner, 'localhost', '8080').start()
await asyncio.get_running_loop().create_future()
asyncio.run(main())