Parse.com SendGrid 云模块:无法发送标头参数对象
Posted
技术标签:
【中文标题】Parse.com SendGrid 云模块:无法发送标头参数对象【英文标题】:Parse.com SendGrid Cloud Module: Cannot send header param object 【发布时间】:2014-08-12 20:43:10 【问题描述】:我尝试通过 Parse.com 的 SendGrid 云模块发送一封带有 header 参数的电子邮件,以便包含一些关于正在发送的电子邮件的独特参数。
var SendGrid = require("sendgrid");
SendGrid.initialize(username, password);
SendGrid.sendEmail(
to: request.params.to,
from: request.params.from,
subject: request.params.subject,
html: request.params.html,
headers: JSON.stringify( "unique_args": "newsletter": request.params.newsletter )
,
success: function(httpResponse)
response.success(httpResponse);
,
error: function(httpResponse)
response.error(httpResponse);
);
这会得到错误消息:标头中的 JSON 有效但不兼容
当我不对标头进行字符串化时,我会收到以下错误: 未捕获的错误:无法对对象进行格式编码
有关 SendGrid 邮件 API 的更多信息:https://sendgrid.com/docs/API_Reference/Web_API/mail.html
更多关于 Parse.com SendGrid 云模块的信息:https://www.parse.com/docs/cloud_modules_guide#sendgrid
谢谢!!
【问题讨论】:
【参考方案1】:标题的键实际上是x-smtpapi
。对于这种情况,您也不需要对 json 进行字符串化。
您的示例的完整用法是:
var SendGrid = require("sendgrid");
SendGrid.initialize(username, password);
SendGrid.sendEmail(
to: request.params.to,
from: request.params.from,
subject: request.params.subject,
html: request.params.html,
"x-smtpapi": "unique_args": "newsletter": request.params.newsletter
,
success: function(httpResponse)
response.success(httpResponse);
,
error: function(httpResponse)
response.error(httpResponse);
);
该库的文档是here。通过提供的方法创建和使用电子邮件对象实际上更容易。
【讨论】:
以上是关于Parse.com SendGrid 云模块:无法发送标头参数对象的主要内容,如果未能解决你的问题,请参考以下文章
无法使用 parse.com 云功能 Android 将 Json 对象强制转换为 Float
Parse.com 云代码 - 无法弄清楚为啥 javascript 变量在所有数组项中具有相同的值