2016-01-18 70 views
2

我使用POST發送使用SendGrid的Web API的電子郵件。 HTML電子郵件正文具有與其相關的樣式。將樣式應用於SendGrid Web API中的html電子郵件

Screenshot of the email body

String body = 'api_user=username&api_key=pwd&to[][email protected]&subject=Message from SendGrid&html={text}&[email protected]'; 

    body = body.replace('{text}', emailBody); 
    HttpRequest req = new HttpRequest(); 
    req.setEndpoint('https://api.sendgrid.com/api/mail.send.json'); 
    req.setMethod('POST'); 
    req.setbody(body); 
    Http http = new Http(); 
    HTTPResponse response = http.send(req); 

收到電子郵件然而,當,它沒有身體,沒有。如果我從p和div中刪除內聯CSS,則呈現正文。如何保持HTML體中的樣式不變?有沒有其他方法?

回答

2

我的直覺是,這是關係到 '=' '風格=「'

嘗試URL編碼emailBody:

body = body.replace('{text}', encodeURIComponent(emailBody)); 
+2

你的預感是正確的過盡EncodingUtil.urlEncode(emailBody ,'UTF-8');以所需格式獲取電子郵件。 – codeinprogress

相關問題