【问题标题】:python basehttpserver: can i modify the 404 response?python basehttpserver:我可以修改 404 响应吗?
【发布时间】:2011-04-07 20:54:35
【问题描述】:

是否可以修改pythons basehttpserver库发送的404响应页面?

【问题讨论】:

    标签: python basehttpserver


    【解决方案1】:

    要修改BaseHTTPRequestHandler 显示的默认错误文档,您可以自定义error_message_format 属性。这是一个字符串,您可以在其中使用以下标记,这些标记将在呈现时替换为它们的值:

    • %(code)d 是数字错误代码(例如 404)
    • %(message)s 是错误的字符串表示
    • %(explain)s 是一个包含更多错误解释的字符串

    当然你可以使用 HTML。例如:

    yourBaseServerInstance.error_message_format = '''
    <body>
    <h1>Error!</h1>
    <p>Error code %(code)d.</p>
    <p>Message: %(message)s.</p>
    <p>Error code explanation: %(code)s = %(explain)s.</p>
    </body>'''
    

    【讨论】:

    • 默认情况下,内容将以text/html发送。所以我会说你的文本 will 被作为 HTML 处理。 OTOH,如果您想要发送其他类型,请更改error_content_type 属性。 (纯文本的文本/纯文本,但如果你足够勇敢,几乎可以使用任何 MIME 类型;))
    猜你喜欢
    • 2011-11-13
    • 1970-01-01
    • 1970-01-01
    • 2020-01-02
    • 1970-01-01
    • 2013-02-20
    • 2019-01-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多