当前位置:首页 > 网站制作 > 正文内容

Google App Engine(GAE)接收邮件(E-mail)及转载用法

admin15年前 (2009-10-18)网站制作349

“Google App Engine 可让您在 Google 的基础架构上运行您的网络应用程序。App Engine 应用程序易于构建和维护,并可根据您的访问量和数据存储需要的增长轻松扩展。使用 Google App Engine,将不再需要维护服务器:您只需上传您的应用程序,它便可立即为您的用户提供服务.继09月03日提供XMPP服务支持后,10月13 日又更新了SDK,增加了接收邮件(Incoming email support)支持。

Google App Engine提供了2种发送邮件的方式。

第一种方式是用mail API的send_mail或send_mail_to_admins函数。

前者可以发给任意邮箱,后者是发给这个应用程序的管理员(所以不用给出收件人邮箱)。这是完整的参数列表文档

必填的参数有(更进一步来说,这些参数都不能为空字符串):

sender:发信人邮箱。必须为当前登录用户或这个应用程序的管理员的邮箱。

to:收件人邮箱。有2种方式:”[email protected]”和”ooxx <[email protected]>”。还可以发给多个收件人,如:["[email protected]", "[email protected]"]。

subject:邮件主题

body:邮件内容(纯文本)

可选参数有:

cc:抄送人邮箱。参数类型同收件人邮箱。

bcc:密送人邮箱。参数类型同收件人邮箱。

reply_to:指定收件人回复的地址(不给出时,默认是回复给发信人)

html:用html方式写的邮件内容。如果收件人的邮件客户端支持html,则显示这部分内容。但body参数不能省略,仍必须给出。

attachments:附件。它是一个由元组(tuple)组成的列表(list)。每个元组都用于描述一个附件,它们都含2个值,分别为文件名和文件内容(类型为byte string)。由于我也没发过,建议大家直接参考示例代码和支持的文件格式

下面给个简单的例子,演示怎么发邮件:

代码:

from google.appengine.api import mail

mail.send_mail(’[email protected]’,

[email protected]’,

u’发现红包’, #中文必须写成unicode,不然会变成乱码

‘rt’,

html = u’<a href=”http://www.xxx.com/”>领取红包</a>’)

第二种方式是用mail API的EmailMessage类

首先需要创建一个mail.EmailMessage类型的对象,再给这个参数的属性赋值(即收件人邮箱等,也可以在创建对象时就赋值),最后调用对象的send方法就可以了。对象的属性和上面send_mail的参数列表是一样的。

这种方式可以重复利用对象,只需更改对象的属性,然后调用send方法,就可以多次发送邮件。如果需要多次发送,每次只需更改稍许内容,则用这种方式比较方便。

由于Google给出了示例代码(含发信人为当前登录用户的情况),我就不自己写了。

注意:

发送过程是异步执行的,发送时只送到Google App Engine的邮件服务器(我这里显示的邮送域是apphosting.bounces.google.com)便返回(不会报告错误)。如果发送失败, 发信人只会在自己邮箱收到发送失败的提示邮件,Google App Engine不会也无法对其进行错误处理。

但如果发送时参数有误(如邮件地址不合法,或少了邮件内容等),则可能会产生出现异常,这里有详细的异常列表

此外,mail API里还有检查邮箱地址是否合法的函数。

扫描二维码推送至手机访问。

版权声明:本文由博赚恋吧资源站发布,如需转载请注明出处。

本文链接:https://432l.com/post/1506.html

分享给朋友:

相关文章

Google 节日 Logo 收集

1998 年Google 节日Google最初使用的Logo:  火人节 ( burning man festival 这个节日每年8月底在美国内华达黑岩沙漠举行,以异想天开与荒诞之而著称,每年吸引大量标榜自由的年轻人来以激进的方式表现自己 ) Logo:  感恩节 Logo:  Google尚处于测试版时所使用的图标 :为圣诞假期而制作的Logo:  1999年为了感恩节,Google的火鸡勇敢...

恋吧推荐的20个最好的免费音乐分享网站

20个最好的免费音乐分享网站 FinetuneGrooveshark Imeem Jango JukeFly Last.fm Musicoveryhttp://musicovery.com/可以设置你的心情和音乐类型,然后可以播放相应的音乐。详细介绍。MySpace Pandora SkreemR 以上部分来源:CnM...

新手做网站时要关注的10个网站程序

建站程序是站长运营网站的根本。如何选择建站程序,提供适合自己网站会员体系的服务和应用,一直是广大站长朋友比较关心的话题。  NO.1 Discuz!  程序简介:Discuz!是全球范围内用户量最大、覆盖面最广的社区论坛(BBS)产品。作为一套成熟的社区解决方案,Discuz! 的每一次升级都引领着中国互联网的社区化、社交化潮流,经过八年多的发展,Discuz! 所建立的社区技术体系和人机交互模型...

11个改善 WordPress 速度和性能的技巧

 网站性能是任何成功的网站的一个关键因素。如今WordPress的正变得比以往任何时候都更受欢迎,这里提到的11个提升WordPress速度与性能的技巧可能对你有用。1.升级到Wordpress的最新版本(beta版除外)WordPress 2.7相对于以往的版本有大量的更新,因此,最好升级到最新的版本。2.删除没有必要的插件,升级正在使用的插件从Web服务器上删除你未使用的插件,仅仅停...

SuperChirp.com:让别人付费阅读你的Twitter信息

   网站介绍:SuperChirp是一个让用户付费阅读Twitter消息(Tweets)的订阅网站,想出售消息的用户(主要是明星等有吸引力的人)自己定价,每月订阅费在0.99美元-9.99美元之间,用户订阅Tweets后,通过Twitter的Direct Message系统或者SuperChirp就能进行阅读。 看到这个主意,相信很多人都想过的,可是有勇气...

Wibiya:强化博客互动功能的交互式工具栏服务

Wibiya是一个提供博客交互式工具栏服务,通过Wibiya你可以增强你的Blog和读者之间的交互,从而提高你的博客的用户粘性。今天收到Wibiya的内测邀请,在第一时间体验了这个服务,和大家分享一下。效果请看本站底部的导航栏效果。主要功能: 可以将Fecbook Community整合到你的Blog中,方便在线读者进行交流; 提供ajax式博客搜索,可以替代博客内置的搜索; 提...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。