/
send_email.py
37 lines (34 loc) · 1.07 KB
/
send_email.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import webapp2
import urllib
import base64
import config
from google.appengine.api import urlfetch
class SendEmail(webapp2.RequestHandler):
def post(self):
self.request.get('key')
fields = {
'from': '%s <%s>' % (
config.mailgun_sender_name,
config.mailgun_sender_email
),
'to': self.request.get('recipient'),
'subject': self.request.get('subject'),
'text': self.request.get('body'),
}
payload = urllib.urlencode(
{
k: unicode(v).encode('utf-8') for k, v in fields.iteritems()
}
)
result = urlfetch.fetch(
url=config.mailgun_api_url,
payload=payload,
method=urlfetch.POST,
headers={
'Content-Type': 'application/x-www-form-urlencoded',
'Authorization': 'Basic %s' % base64.b64encode(
'api:%s' % config.mailgun_api_key
),
}
)
return self.error(result.status_code)