问题标签 [basehttpserver]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
94430 浏览

python - Python 3.x BaseHTTPServer 或 http.server

我正在尝试制作一个 BaseHTTPServer 程序。我更喜欢使用 Python 3.3 或 3.2。我发现文档很难理解要导入的内容,但尝试从以下位置更改导入:

至:

然后导入工作,程序启动并等待 GET 请求。但是当请求到达时会引发异常:

问题:是否有一个版本的 BaseHTTPServer 或 http.server 可以与 Python3.x 一起使用,还是我做错了什么?

这是我尝试在 Python 3.3 和 3.2 中运行的“我的”程序:

该程序在 Python2.7 中部分工作,但在 2-8 次请求后给出此异常:

0 投票
2 回答
19831 浏览

python - 如何在 Python 中发送和接收 HTTP POST 请求?

我有这两个 Python 脚本,用于尝试解决如何在 Python 中发送和接收 POST 请求:

客户端:

服务器:

问题是服务器在 self.rfile.read() 上挂起,直到在客户端上调用 conn.close() 但如果在客户端上调用 conn.close() ,则客户端无法接收来自服务器的响应。这会产生一种情况,即可以从服务器获得响应或读取 POST 数据,但不能同时读取两者。我认为这里缺少一些可以解决此问题的东西。

附加信息:

conn.getresponse() 导致客户端挂起,直到收到来自服务器的响应。在服务器上的函数完成执行之前,似乎没有收到响应。

0 投票
1 回答
60 浏览

python - 共享主机上的 BasicHTTPServer

我正在用 Python 为我的办公室编写一个桌上足球梯,以在我的 HostGator 共享主机上提供服务。我对这门语言非常陌生(C# 专业人士),但是已经获得了可以在服务器上运行的简单脚本。

我使用了https://wiki.python.org/moin/BaseHttpServer中的示例,将服务器名称修改为我的域,并将端口修改为四位数。我得到了 HostGator 支持来打开相应的传出端口。然后我用 a+x chmodded 脚本并执行它。成功!服务器运行并保持不变。

我试图以各种方式访问​​服务器,但没有成功。

  • http://mydomain.com/path/to/script
  • http://mydomain.com:port/path/to/script
  • http://mydomain.com:port
  • 对上述路径的 GET 请求。

我在服务器配置方面或代码方面缺少什么来成功访问此 BaseHTTPServer?

0 投票
2 回答
323 浏览

python - 检测浏览器何时在 Python 的 BaseHTTPServer 中点击“刷新”

如何检测客户端何时按下 F5 / 刷新?是否有任何标头发送到服务器以表明我可以抓取?我正在做一些服务器端缓存,我想在检测到刷新时自动使缓存过期。谢谢。

0 投票
1 回答
1793 浏览

python - 响应BaseHttp模块python的Http版本

我正在使用带有 python 的 BaseHttp 运行服务器。

我收到来自基于 HTTP/1.1 的客户端的请求

但是,当我用我的回复回复客户时,客户拒绝接受我的回复。经过进一步分析,我发现我发送的 HTTP 版本是 HTTP/1.0。但是,我不知道它是如何设置的。

客户端的错误是。

我通过以下方式设置标题:

0 投票
1 回答
209 浏览

python - Python BaseHTTPServer 更快地提供文件

我有一些相对较大的 .js 文件(flot 和 jquery)与 Python BaseHTTPServer 一起使用。

目前我正在使用:

但它相当慢,甚至从同一台机器加载文件(> 秒来获取这些文件)。我想这是将整个文件读入 RAM,然后从中写入,有没有办法可以加快速度?

0 投票
1 回答
180 浏览

python - 如何在使用 BaseHTTPServer 处理请求之前对其进行预处理?

我想拒绝访问正在使用该CGIHttpServer模块的服务器上的某些路径。我想出了一个白名单,我需要检查每个请求,但我的问题是如何实现它。

我尝试覆盖该handle_one_request方法(该方法既处理请求又发送响应),但问题是路径信息在运行之前不可用。这意味着我总是要么太早要么太晚。现在我正在考虑复制粘贴原始函数源并自己编辑它或覆盖wfile.flush,这听起来太难看了。

谁能给我一个更好的解决方案?

这是handle_one_request 的源代码

0 投票
2 回答
1790 浏览

python - BaseHttpServer 类中的全局变量

我正在使用类 BaseHttpServer 的方法“do_GET”。

我想做的是对这个方法的连续调用可以访问同一个共享变量

如果我发送第一个命令 0 然后 1,我不能访问同一个变量

0 投票
1 回答
1119 浏览

python - BaseHttpServer 和 wsgiref.simple_server 的区别

我正在寻找一个为我提供基本 http 服务器功能以进行本地访问的模块。似乎 Python 有两种方法可以在标准库中实现简单的 http 服务器:wsgiref.simple_serverBaseHttpServer

有什么区别?有什么强有力的理由更喜欢其中一个吗?

0 投票
1 回答
638 浏览

apache - Python BaseHTTPServer 与 Apache 和 mod_wsgi

我是第一次设置一个非常简单的 HTTP 服务器,正在考虑我的选择,并希望得到任何关于最佳方式的反馈。我的目标很简单:我不提供任何文件,我只需要响应一个非常具体的包含地理位置数据的 HTTP POST 请求,运行一些 Python 代码,然后以 JSON 形式返回结果。我确实需要能够同时响应多个请求。我想使用 HTTPS。

在查看 stackoverflow 时,我似乎可以使用 BaseHTTPServer 和 ThreadingMixIn,或者 Apache 和 mod_wsgi。我已经安装了 Apache,但从未配置过它。是否有令人信服的理由去走更复杂的 Apache 路线(对我来说更复杂,因为我需要对配置 Apache 和让 mod_wsgi 进行研究,但已经有一个 BaseHTTPServer 的测试实例启动并运行),或者它是否同样安全,安全(非常重要)和面向性能的使用 BaseHTTPServer 做这么简单的事情?