首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >可以使用GAE直接邮寄上传的二进制文件吗?

可以使用GAE直接邮寄上传的二进制文件吗?
EN

Stack Overflow用户
提问于 2013-07-06 21:05:50
回答 1查看 68关注 0票数 0

我正在使用python GAE,我想将用户发布的文件发送到服务器。

我可以(我认为)这样做:首先将文件存储到BlobStore,然后从BlobStore中检索它,通过邮件发送并从BlobStore中删除它。

有没有可能不使用BlobStore就能做到这一点呢?

我有这个代码

代码语言:javascript
复制
up = self.request.POST.multi['upfile']
mail.send_mail(from_address, to_address, subject, body,
              attachments=[(up.filename, up.file.read())])

它可以很好地处理文本文件,但对于二进制文件,它会减少内容,例如,原始png文件的十六进制转储是:

代码语言:javascript
复制
        00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
000000  89 50 4E 47 0D 0A 1A 0A 00 00 00 0D 49 48 44 52 .PNG........IHDR
000010  00 00 00 40 00 00 00 28 08 02 00 00 00 C1 AC 6B ...@...(.......k
000020  BE 00 00 00 01 73 52 47 42 00 AE CE 1C E9 00 00 .....sRGB.......
000030  00 09 70 48 59 73 00 00 0B 13 00 00 0B 13 01 00 ..pHYs..........
000040  9A 9C 18 00 00 00 07 74 49 4D 45 07 DD 05 0F 11 .......tIME.....
000050  05 38 BA 66 BF EB 00 00 00 19 74 45 58 74 43 6F .8.f......tEXtCo
000060  6D 6D 65 6E 74 00 43 72 65 61 74 65 64 20 77 69 mment.Created wi
000070  74 68 20 47 49 4D 50 57 81 0E 17 00 00 00 1D 49 th GIMPW.......I
000080  44 41 54 58 C3 ED C1 01 01 00 00 00 82 20 FF AF DATX......... ..
000090  6E 48 40 01 00 00 00 00 00 00 F0 64 1E 28 00 01 nH@........d.(..
0000A0  D2 35 20 CA 00 00 00 00 49 45 4E 44 AE 42 60 82 .5 .....IEND.B`.

上传、邮寄、下载的十六进制转储为:

代码语言:javascript
复制
        00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
000000  89 50 4E 47 0D 0A 1A 0D 0A 2D 2D 3D 3D 3D 3D 3D .PNG.....--=====
000010  3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 30 36 38 30 38 34 ==========068084
000020  32 39 32 39 3D 3D 2D 2D 2D 2D 3D 3D 3D 3D 3D 3D 2929==----======
000030  3D 3D 3D 3D 3D 3D 3D 3D 3D 30 36 38 30 38 34 32 =========0680842
000040  39 32 39 3D 3D 2D 2D 929==--

我是Python的新手,所以我可能连最基本的东西都错了。

如果文件是二进制的,那么使用read()读取文件是错误的吗?(当我在文件系统上这样做时,它看起来很好),或者像我一样在GAE上发送二进制数据是错误的吗?(不是需要的字节串吗?)

EN

回答 1

Stack Overflow用户

发布于 2013-07-06 23:03:00

Google App Engine从文件扩展名推断出mime类型。您是否检查了电子邮件头以确保电子邮件提供了正确的mime类型,以确保其编码正确?

https://developers.google.com/appengine/docs/python/mail/attachments

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17503260

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档