我试图理解为什么发送django InMemoryUploadedFile
对象作为芹菜任务Can't pickle <type 'cStringIO.StringO'>: attribute lookup cStringIO.StringO failed
的参数发送时不能被腌制。所以我尝试了File
对象,但效果不好,但StringIO
可行。
需要一些假人的指导来理解3之间的区别。
谢谢!
答案 0 :(得分:4)
Python不允许腌制某些函数,因为如果允许的话会出现安全问题。 (这取决于 - 有办法通过参考来挑选一些功能)
已经在python的feature线程中多次请求了pickle文件对象,最好的理由是因为它允许运行时注入潜在的恶意事件,从而为python的安全进程打开了额外的hack向量。
以多种方式使用会非常方便,但这似乎是一种安全限制。