如何在Python中创建服务器端服务以处理来自 web 和移动应用的 HTTP 请求?

0 投票
2 回答
1193 浏览
提问于 2025-04-18 14:12

假设我想在服务器上用Python创建一个服务,主要做以下几件事:

  1. 接收来自网页或手机应用的HTTP请求
  2. 从一个中等规模的数据库中读取数据
  3. 计算并以JSON格式返回结果

~~~~~~~~~~~~ Python API

class BlackBox():

   def getResults(...):
   ....

~~~~~~~~~~~~

我想问的是:我还需要了解哪些其他内容呢?

我做了一些研究,发现大家都在讨论Django,但我不太确定这是否是个好选择。Django的优缺点是什么呢?

2 个回答

0

如果你想了解可以用来搭建这个项目的每一个Python模块,我建议你使用Flask。如果你对Python有点了解,周末就能学会基本用法。这样的话,从处理HTTP请求到把数据转成JSON格式的步骤会更容易理解。

而Django则功能更全面,所有这些功能都已经打包在框架里,所以你不需要单独安装和导入它们。虽然学习Django可能需要更多时间,但目前来说,Django是这两个框架中更适合实际应用的。

至于你需要了解的东西……如果你还没学过一些基本的HTML和CSS,那你得先学一下。这些知识在你写模板时会用到(模板其实就是还没被Python修改的HTML文件),你还需要理解模型-视图-控制器(Model-View-Controller)的概念,不过在学习框架的过程中你会慢慢掌握这些。

不过说实话,正如之前有人提到的,试试看吧。即使你不打算学,你也会在过程中学到这些知识。

0

这个问题的答案可能会有些主观,但你可能想要的是某种网络框架。网络框架通常包含以下一些功能:

  • 路由 - 让你可以轻松地把网址(比如 'www.example.com' 或 'www.example.com/blog')和Python代码逻辑对应起来。
  • 模板引擎 - 让你可以轻松地把Python代码嵌入到HTML页面中,用于根据数据库内容生成页面等。
  • 数据库访问 - 这很明显,就是用来存储你的数据。

django非常棒,而且很受欢迎。PyramidFlask也都很流行。

我对Flask有不少经验,强烈推荐它。虽然Flask本身不直接支持数据库,但这样你可以选择你想要的数据库。你可以考虑SQLAlchemy、SQLite和MongoDB。

撰写回答