在测试文件传输时,自编写脚本在windows环境下遇到无法正确存储文件的问题,经过排查研究后,发现是由于python标准输入流是以文本的方式打开的,对换行符作了处理,需要将其设置成二进制方可解决,添加代码如下即可:
import cgi, os
import cgitb; cgitb.enable()
try: # Windows needs stdio set for binary mode.
import msvcrt
import uuid
msvcrt.setmode (0, os.O_BINARY) # stdin = 0
msvcrt.setmode (1, os.O_BINARY) # stdout = 1
except ImportError:
pass