无法使用 python 的 http.server 进行 POST(代码 501 只能 POST 到 CGI 脚本)

Can't POST with python's http.server (code 501 Can only POST to CGI scripts)

提问人:Etienne TP 提问时间:10/21/2023 最后编辑:ADysonEtienne TP 更新时间:10/22/2023 访问量:29

问:

这是我用来启动服务器的 python 代码(当我在 D:my-app/ 目录中,我有我的 html 和 javascript 文件):

import http.server
server = http.server.HTTPServer
handler = http.server.CGIHTTPRequestHandler
handler.cgi_directories =["D:my-app/cgi-bin"]
PORT = 8080
server_address = ("", PORT)
httpd = server(server_address, handler)
httpd.serve_forever()

我的javascript文件(带有jquery)包含以下代码:$.post( "/cgi-bin/modify_file.php", {x_y: mousePosText.textContent,R: Math.min(0.85*h/2,0.85*w/2)} );

D:my-app/cgi-bin/ 包含modify_file.php

我认为以下部分允许将 POST 方法与 modify_file.php 一起使用:

handler = http.server.CGIHTTPRequestHandler
handler.cgi_directories =["D:my-app/cgi-bin"]

尽管如此,我还是收到错误代码 501 只能 POST 到 CGI 脚本(我认为这通常是由于没有设置处理程序 .cgi_directories)。

你对这个问题有什么想法吗?

注意:我的操作系统是 Windows

谢谢大家!

python jquery 发布 cgi http.server

评论

0赞 John Gordon 10/22/2023
您正在使用 ,它只知道如何处理 CGI 请求,而不是 PHP 请求。CGIHTTPRequestHandler

答: 暂无答案