0

我正在尝试使用 Pys60 python 代码将一个巨大的文件从我的诺基亚 N95 手机上传到我的网络服务器。但是代码崩溃了,因为我试图将文件加载到内存中并尝试发布到 HTTP url。知道如何使用 Pys60 将 > 120 MB 的大文件上传到网络服务器。

以下是我用来发送 HTTP 请求的代码。

    f = open(soundpath + audio_filename)
    fields = [('timestamp', str(audio_start_time)), ('test_id', str(test_id)), ('tester_name', tester_name), ('sensor_position', str(sensor_position)), ('sensor', 'audio') ]
    files = [('data', audio_filename, f.read())]
    post_multipart(MOBILE_CONTEXT_HOST, MOBILE_CONTEXT_SERVER_PORT, '/MobileContext/AudioServlet', fields, files)
    f.close
4

3 回答 3

0

你不能。这在物理上几乎是不可能的。您需要将文件分成小块并一点一点地上传,这在那种平台上很难快速有效地完成。

杰米

于 2009-11-04T00:01:29.850 回答
0

您需要编写一个客户端代码来将源文件分成小块并在服务器端重建这些部分。

于 2009-11-04T00:02:16.930 回答
0

这个post_multipart()函数是从哪里来的?

如果它来自这里,那么应该很容易调整代码,以便它在参数中接受一个文件对象而不是文件的全部内容,以便 post_mutipart 在发布时读取小块数据而不是加载整个文件发帖前的记忆。

这绝对是可能的。

于 2009-11-04T09:05:28.697 回答