HTTP从Android发布到Python(Apache Mod_Python)

时间:2011-03-01 17:55:28

标签: python android http-post mod-python

我想将HTTP Post数据从Android应用程序发送到Python脚本(Apache with Mod_Python)。我测试了我的Android客户端并成功将数据发送到php脚本。当我使用表单并将数据发送到我的Python脚本时,它表现良好(上传或使用下面的脚本提示“没有上传文件”)。

当我想将数据从我的Android应用程序发送到Python时,我只会遇到问题。

我收到错误消息

  

ValueError:解包需要多于1个值

这是我的Python代码:

def upload(req):

    sys.stderr = open('/var/www/cv/py/errorlog.txt', 'a')

    try: # Windows needs stdio set for binary mode.
        import msvcrt
        msvcrt.setmode (0, os.O_BINARY) # stdin  = 0
        msvcrt.setmode (1, os.O_BINARY) # stdout = 1
    except ImportError:
        pass

if False:
        # do some stuff, not used
else:
    message = 'No file was uploaded'

sys.stderr.close()
sys.stderr = sys.__stderr__

return message

我对http帖子的Android代码很长,但在其他设置下工作正常,所以我暂不发布(我可以根据要求提供)。有没有人有提示,我需要在哪里开始搜索错误?

1 个答案:

答案 0 :(得分:1)

我发现了错误: 在我的HTTP Post中,我使用“\ n”作为换行符。 PHP很好,即使它是畸形的。 Mod_Python需要“\ r \ n”。