使用 Gmail SMTP 发送电子邮件 - Meteorjs

2024-04-29

您好,我正在尝试设置我的 Gmail 帐户来为我的 Meteor 应用程序发送电子邮件,到目前为止还不是很容易

服务器.js

Meteor.startup(function () {
  smtp = {
    username: 'xxxxx',   // eg: [email protected] /cdn-cgi/l/email-protection
    password: 'YYYYYYYY',   // eg: 3eeP1gtizk5eziohfervU
    server:   'smtp.gmail.com',  // eg: mail.gandi.net
    port: 465
  }

  process.env.MAIL_URL = 'smtp://' + encodeURIComponent(smtp.username) + ':' + encodeURIComponent(smtp.password) + '@' + encodeURIComponent(smtp.server) + ':' + smtp.port;
});

Email.send({
  from: "[email protected] /cdn-cgi/l/email-protection",
  to: "[email protected] /cdn-cgi/l/email-protection",
  subject: "Meteor Can Send Emails via Gmail",
  text: "Its pretty easy to send emails via gmail."
});

并且测试电子邮件永远不会发送以下错误代码,表明我尚未设置环境变量。

I20150715-18:14:02.641(0)? ====== BEGIN MAIL #0 ======
I20150715-18:14:02.642(0)? (Mail not sent; to enable sending, set the MAIL_URL environment variable.)
I20150715-18:14:02.643(0)? MIME-Version: 1.0
I20150715-18:14:02.643(0)? From: [email protected] /cdn-cgi/l/email-protection
I20150715-18:14:02.643(0)? To: [email protected] /cdn-cgi/l/email-protection
I20150715-18:14:02.643(0)? Subject: Meteor Can Send Emails via Gmail
I20150715-18:14:02.643(0)? Content-Type: text/plain; charset=utf-8
I20150715-18:14:02.643(0)? Content-Transfer-Encoding: quoted-printable
I20150715-18:14:02.644(0)? 
I20150715-18:14:02.644(0)? Its pretty easy to send emails via gmail.
I20150715-18:14:02.645(0)? ====== END MAIL #0 ======

这可能是因为我在 C9 上运行这个吗?

Thanks


糟糕的是cloud9不允许设置环境变量。也许你可以设置Meteor.settings对象而不是环境变量?

http://docs.meteor.com/#/full/meteor_settings http://docs.meteor.com/#/full/meteor_settings

本质上,当你使用--settings启动它时,你可以将JSON传递给meteor。这些仅在服务器端可用,除非包装在根的“公共”对象下。

{
  'public': {
     'some-setting': 'some-value'
  },
  'other-setting': 'other-value'
}

这是一种处理无环境变量的解决方法。由于核心电子邮件包始终查看 MAIL_URL 环境变量,因此您可能需要通过其他服务/提供商发送电子邮件。

Mandrill http://mandrill.com/(由 Mailchimp 提供)有相当大的免费套餐,可以让您发送交易电子邮件。您甚至可以在 mailchimp 中制作邮件模板、导出到 HTML、导入到 mandrill 并在 API 调用中传入合并变量。

更好的是,有一个用于写入 Mandrill API 的强大包。https://atmospherejs.com/wylio/mandrill https://atmospherejs.com/wylio/mandrill

希望有帮助!

Elliott

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Gmail SMTP 发送电子邮件 - Meteorjs 的相关文章

  • 在 Meteor 0.8 中定义迭代块助手

    直到版本 0 8 为止 可以使用常规的 Handlebars 方式来定义迭代块助手 例如流行的each with key 定义 例如 here https gist github com strathmeyer 1371586如下 Hand
  • 如何在meteor上创建默认用户?

    如果不存在用户 我想创建一个管理员用户 我在服务器文件夹内的 js 文件上尝试过 Meteor startup function if Meteor users find count var options username admin p
  • 使用 Autoform 插入并删除不安全的内容

    我一直在我的 Meteor 项目中使用 Collection2 和 Autoform 让事情变得容易多了 但是 当我删除不安全时 它不再插入 自动表单提交按钮 我预料到了这一点 但是 我进行了搜索 但找不到使其正常工作的标准方法 我在 li
  • 布局渲染后如何初始化 jQuery 对象?

    我想定义一些变量 以便在我的应用程序布局呈现后立即用于确定 jQuery 选择器的范围 我尝试用以下方式定义它们 Meteor startup function Define variables 但它不起作用 对象是空的 这是我声明我的应用
  • 流星中的页面转换?

    我有一个流星移动应用程序结构上在职的 我确实需要将视图与一些页面转换缝合在一起 我看了看铁过渡剂 https github com tmeasday iron transitioner项目但看起来开发已经停止了 最后一次提交是在 6 个月前
  • 如何使用 Meteor js 触发自定义事件

    是否可以使用 Meteor 触发自定义事件 我发现触发自定义 jquery 事件不起作用 因为 Meteor 事件与 jQuery 是分开的 正如这里所讨论的 https stackoverflow com questions 106465
  • Meteor:未捕获 RangeError:超出最大调用堆栈大小

    我对流星很陌生 我正在做简单的应用程序 这是我遇到的问题 Template newFeedForm events submit new feed form event event preventDefault const target ev
  • 在 Meteor 应用程序中使用 Disqus / reCaptcha

    我正在开发一个使用 Meteor 的应用程序 我正在尝试在我的其中一个表单上使用 reCaptcha 并在我的某些页面上使用 Disqus 评论系统 但问题是 当我运行流星服务器时 这些都没有被渲染 以下是我添加到模板中的示例 Disqus
  • 我怎样才能完成反应日期

    我正在创建消息列表 显示消息发送的时间 这是我的留言集 Messages new Mongo Collection messages Messages attachSchema new SimpleSchema created type D
  • Meteor Subscribe 不更新集合的排序顺序

    Snippet from Template div class post container each elements gt post element this each div Snippet from Client Meteor su
  • 如何更改Accounts-UI模板?

    根据望远镜 http demo telesc pe 例子 源代码 https github com SachaG Telescope 可以显示自定义的 account ui 表单 参见他的用户登录 html https github com
  • 流星合并同一集合的光标

    在我的社交应用程序 如 FB 中 我有一个奇怪的需要 将同一集合用户的两个光标合并到一个发布中 Meteor 服务器打印此错误 发布函数为集合用户返回了多个游标 也许这在 Meteor 0 7 2 中无法完成 也许我的方法是错误的 但我发现
  • 部署到 Digital Ocean 的 Meteor 应用卡在 100% CPU 和 OOM

    我有一个使用 Meteor Up 部署到 Digital Ocean 的 Meteor 0 8 0 应用程序 该应用程序一直卡在 100 CPU 只是因内存不足而崩溃 然后以 100 CPU 再次启动 过去24小时就这样卡住了 奇怪的是没有
  • Meteor:多个不需要的 mongodb 连接使数据库部署饱和

    我维护了一些部署在 AWS elastic beanstalk 64 位 Amazon Linux 4 5 2 上的meteor 1 7 0 3 应用程序 所有连接到托管 mongodb 部署 在 Compose 上 mongodb 版本
  • Chimpjs 和 Meteor:不使用 Velocity 的测试中的方法调用

    此应用程序显示了使用 Cucumber 测试 Meteor 的示例 https github com mhurwi cucumber meteor tutorial https github com mhurwi cucumber mete
  • 如何使用 Python 在 Cloud9 中声明端口

    我刚开始使用Cloud9 IDE http c9 io c9 到目前为止 除了一些小问题之外 它看起来很棒 我从文档中看到 要启动一个简单的node js http服务器 您必须传递process env PORT来代替常规端口 例如 80
  • 编写/转换 Meteor 同步函数

    这已经困扰我一段时间了 所以我想我应该对其进行快速的质量检查 如果有一个普通的nodeJS模块或其他东西 并且它在服务器端有一个异步功能 我如何使其同步 例如我如何转换nodejsfs stat异步函数转为同步函数 例如我有 服务器端js
  • 将服务连接到现有的流星帐户

    我正在设置一个流星应用程序 其中涉及使用用户名和密码进行注册 然后希望将该帐户与 Facebook 和 Twitter 连接起来 我只需使用帐户包即可轻松启动并运行第一部分 但是当我有一个登录用户调用 Meteor loginWithFac
  • Meteor 中的触摸事件

    我开始使用 Meteor 做的第一件事是开始为手机 平板电脑编写基于触摸的 Web 应用程序 以下是重现问题的方法 第一步 创建一个空白项目 meteor create touch example cd touch example mete
  • 在流星收集加载时显示加载程序

    我有一个模板 task list 看起来像这样 each tasks gt task each Template task list tasks返回一个集合 在用户界面中 加载似乎需要一些时间 当集合正在加载时 我想显示一个加载指示器 关于

随机推荐

  • Java中printf左对齐

    当我运行该程序时 阶乘值右对齐 有没有办法让它左对齐 同时保持中间 50 个空格 public class Exercise 5 13 public static void main String args int numbers 1 2
  • 应该如何在 Ant Design Upload 组件中设置 customRequest 以使用 XMLHttpRequest?

    我的组件一团糟 现在我传递了一个函数 我已经尝试了一百万件事但无法让它工作 export default class DatafileUpload extends Component initialState fileUploading f
  • Datalogic得利捷 Falcon X3 - 条码扫描器

    我刚刚拿到 Datalogic Falcon X3 条码设备 有人问我是否可以制作一个 javascript 应用程序来读取条码并通过 sql 将其发送到数据库 由于我不太喜欢 C C 和 Visual Studio 2008 中的 Win
  • 如何始终显示滚动条?

    如何在 UWP 应用中始终显示滚动条 滚动条总是在几秒钟后消失 我尝试过设置ScrollViewer VerticalScrollBarVisibility Visible 但滚动条仍然消失 我已经看过了Xaml UI 基础示例 https
  • CURL 静态链接未解析的外部符号

    我在 x64 Native Tools 命令提示符 Visual Studio 中使用此命令从源代码构建了 CURL 静态库 nmake f Makefile vc 模式 静态机器 AMD64 我将 lib 文件夹添加到链接器库文件夹 将
  • 从数据框 R 列表中获取列

    我是一个 R 初学者 我被这个问题困扰了 我有一个数据框 并通过使用 split 函数创建了一个数据框列表 例如 dfList lt split mtcars mtcars cyl 现在我想检索特定数据帧的列 例如数据框 1 的第 2 列
  • Java 中的递归回溯解决填字游戏

    我需要在给定初始网格和单词的情况下解决填字游戏 单词可以多次使用或根本不使用 初始网格如下所示 这是一个单词列表示例 pain nice pal id 任务是填充占位符 水平或垂直长度 gt 1 像那样 p pain pal id i c
  • 提交搜索表单后无法使用 Flask 应用程序从 url 检索变量

    我想在用户提交搜索表单后呈现一个新视图 我的制作方式与处理其他视图的方式相同 但不幸的是这次没有发生任何事情 我无法从应用程序路由中检索内容 所以这个问题不是重复的this https stackoverflow com questions
  • 在 F# 中实现返回 Task 的 C# 方法

    我正在 F 中创建一个类型 该类型继承自 C 类 该类公开返回的方法Task
  • css - 溢出允许水平滚动

    我正在尝试这一页 http www4 wittenberg edu admission dev undergrad 我正在尝试让溢出允许水平滚动 我尝试将主体设置为隐藏 并将 真实主体 类设置为自动 这似乎不起作用 你需要用一个包裹你的长内
  • 如何在 UIBarButtonItem 上触发高亮效果

    当您点击UIBarButtonItem in a UIToolbar 有白光效果 是否有可能触发一个事件来显示这种效果 我不想按按钮 只应显示效果 我想向用户展示该按钮后面有新内容 感谢您的帮助 这是 highlight png 我不是在开
  • Golang中的匿名接口实现

    在Go中 有没有办法匿名满足接口 似乎没有 但这是我最好的尝试 In the 操场 http play golang org p 4i 8o087dg package main import fmt type Thing interface
  • 在 strings.xml 中存储十六进制颜色值

    我正在尝试存储hex colorstrings xml 中我的文本的值 因此所有布局文件都将引用该值 以便能够轻松快速更改项目的所有布局文本 但是我在引用它时遇到了麻烦 Using android textColor FFFFFF 在我的
  • 无法签出以连字符 (-) 开头的 git 分支

    我克隆了一个 git 存储库 该存储库有一个远程分支 例如 feature abc 当我打字时git checkout feature abc I get error unknown switch e 知道如何结帐这个分支吗 尝试使用以下语
  • MVC5 输入占位符不起作用

    我的代码是这样的 Html EditorFor model gt model CreatedUser new htmlAttributes new class form control placeholder Your Placeholde
  • 为什么通用存储库被视为反模式? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 在我看来 许多专门的存储库类都具有相似的特征 并且让这些类实现一个概述这些特征的接口 创建一个通用存储库是有意义的 为了说明我的观点 假设我们有
  • 在 Perl 中使用 POSIX ceil() 出现意外结果

    我一生都无法弄清楚为什么以下会产生这样的结果 use POSIX my g 6 65 my t g 4 my r t g my n r g my c ceil n print c n n 我知道印记太棒了 抱歉 我已经为我的应用程序解决了这
  • 如何在Android中打开设备管理员设置?

    我想去Security gt Device administrators然而 在我的设置中 我只能弄清楚如何打开Security gt Intent dialogIntent new Intent android provider Sett
  • Eclipse 的 Visual Studio Ctrl+Tab 和 Ctrl+Shift+Tab 等效项

    In Visual Studio I always use Ctrl Tab and Ctrl Shift Tab to navigate between documents I see that Eclipse has Ctrl F6 t
  • 使用 Gmail SMTP 发送电子邮件 - Meteorjs

    您好 我正在尝试设置我的 Gmail 帐户来为我的 Meteor 应用程序发送电子邮件 到目前为止还不是很容易 服务器 js Meteor startup function smtp username xxxxx eg email prot