从Android向Python(Apache Mod_Python)发送HTTP Post

0 投票
1 回答
791 浏览
提问于 2025-04-16 12:45

我想从一个安卓应用程序发送HTTP Post数据到一个Python脚本(使用Apache和Mod_Python)。我之前测试过我的安卓客户端,成功地将数据发送到一个php脚本。当我使用表单发送数据到我的Python脚本时,它运行得很好(上传文件或者下面的脚本提示'没有上传文件')。

我只有在想从我的安卓应用发送数据到Python时遇到问题。

我收到了一个错误信息:

ValueError: 需要更多的值来解包

这是我的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 Post代码比较长,但在其他环境下运行得很好,所以我暂时不贴出来(如果需要我可以提供)。有没有人能给我一些提示,告诉我该从哪里开始查找这个错误?

1 个回答

1

我发现了错误:在我的HTTP Post请求中,我用了"\n"作为换行符。PHP对此没问题,即使它格式不正确。但Mod_Python要求使用"\r\n"。

撰写回答