如何将同一目录中的文件名传递给python变量?

时间:2019-02-08 17:14:14

标签: python-3.x web server

我正尝试在doGET方法中为Web服务器中的BaseHTTPRequestHandler类传递html文件。如何将文件名传递给变量以在处理程序中访问?

代替

from http.server import HTTPServer, BaseHTTPRequestHandler
from urllib.parse import parse_qs

form = '''<!DOCTYPE html>
 <title>Message Board</title>
<form method="POST" action="http://localhost:8000/">
<textarea name="message"></textarea>
<br>
<button type="submit">Post it!</button>
</form>
'''

我想做这样的事情:

form = open("Messageboard.html","r")

但是当我尝试在此处读取文件时,它不起作用:

def do_GET(self):
    # First, send a 200 OK response.
    self.send_response(200)

    # Then send headers.
    self.send_header('Content-type', 'text/html; charset=utf-8')
    self.end_headers()

    # Then encode and send the form.
    self.wfile.write(form.encode())

1 个答案:

答案 0 :(得分:0)

我认为您应该进一步说明您的问题!您可以发布更多代码吗?

通常来说,GET请求将会执行。接受网址参数,例如:

http://example.com/getFormName.do?name=Messageboard%2Ehtml

点“。”文件名中的URL必须进行URL编码(请参见此处:https://www.degraeve.com/reference/urlencoding.php