【问题标题】:I can't upload a file with CGIHTTPServer我无法使用 CGIHTTPServer 上传文件
【发布时间】:2010-09-12 15:44:54
【问题描述】:

我正在使用 CGIHTTPServer 来实现一个简单的 cgi 服务器。我正在尝试使用 post 方法和 multipart/form-data enctype 通过表单上传文件,但是当我恢复 cgi 脚本中的字段值时遇到问题。

当脚本捕获表单字段时,文件的值是一个只有两个字段(键和文件名)的 MiniFieldStorage,我无法恢复文件的内容。正如 API 文档所示,此内容在 StorageField 的 value 字段中,但在 MiniFieldStorage 中,此字段不存在。

¿如何使用文件内容而不是 MiniStorageField 来恢复 StorageField? ¿ 还有其他方法可以使用 CGIHTTPServer 上传文件吗?

非常感谢

【问题讨论】:

    标签: python cgi


    【解决方案1】:

    请提供一些代码示例。 从文字中猜测,您应该查看cgi module。 按照示例进行操作,特别是 cgi.test() 函数。

    cgi — 通用网关接口支持

    通用网关接口 (CGI) 脚本的支持模块。

    此模块定义了许多实用程序,供用 Python 编写的 CGI 脚本使用。

    引用FieldStorage description(使用cgi模块):

    要获取提交的表单数据,最好使用FieldStorage 类。此模块中定义的其他类主要是为了向后兼容而提供的。只实例化一次,不带参数。 从标准输入或环境中读取表单内容(取决于根据CGI标准设置的各种环境变量的值)。由于它可能会消耗标准输入,因此应该只实例化一次。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-03-09
      • 1970-01-01
      • 1970-01-01
      • 2021-06-25
      • 1970-01-01
      • 1970-01-01
      • 2011-11-22
      • 1970-01-01
      相关资源
      最近更新 更多