mailgun /解析服务器(Heroku的)不工作
问题描述:
有两个iOS应用(让我们为它们命名的appA和appB的)都使用parse-server
托管在heroku
和mailgun
,我面临的问题描述以下。mailgun /解析服务器(Heroku的)不工作
让我先说这两个应用程序是不相关的,除了它们都有用户帐户和邮件mailgun
用于在用户创建帐户时发送确认邮件。
appA工作正常,这意味着在创建新帐户时发送确认邮件。 但appB不再有效,这意味着创建新帐户时不会发送确认邮件。
我试图找出两者之间可能存在什么差异,只做一项工作而不做其他。 我也读过或听过关于这个主题的一些教程,来提醒我我是如何做这种设置的(几个月前回来的)。但我无法理解任何相关的差异并解决我的问题,即将appB带回工作状态。
任何暗示(关于该做什么或寻找什么)由在该领域比我更有经验的人将非常感激。
在此先感谢!
仅供参考,这里是该应用的解析服务器index.js这是不工作:
var express = require('express');
var ParseServer = require('parse-server').ParseServer;
var path = require('path');
var S3Adapter = require('parse-server').S3Adapter;
var databaseUri = process.env.DATABASE_URI || process.env.MONGODB_URI;
if (!databaseUri) {
console.log('DATABASE_URI not specified, falling back to localhost.');
}
var api = new ParseServer({
databaseURI: databaseUri || 'mongodb://heroku_database',
cloud: process.env.CLOUD_CODE_MAIN || __dirname + '/cloud/main.js',
appId: process.env.APP_ID || '__appId__',
masterKey: process.env.MASTER_KEY || '__masterKey__',
filesAdapter: new S3Adapter(
"__AAKKIII__",
"pP7Lm16Tt/nTrKq3242Hv",
"myapp",
{directAccess: true}
),
serverURL: process.env.SERVER_URL || 'https://myapp.herokuapp.com/parse',
liveQuery: {
classNames: ["User", "myappUnit", "myappFieldOne", "myappFieldTwo"]
},
emailAdapter: {
module: 'parse-server-simple-mailgun-adapter',
options: {
fromAddress: '[email protected]',
domain: 'mydomain.net',
apiKey: 'key-fjdfijofd',
}
}
});
var app = express();
app.use('/public', express.static(path.join(__dirname, '/public')));
var mountPath = process.env.PARSE_MOUNT || '/parse';
app.use(mountPath, api);
app.get('/', function(req, res) {
res.status(200).send('I dream of being a website. Please star the parse-server repo on GitHub!');
});
app.get('/test', function(req, res) {
res.sendFile(path.join(__dirname, '/public/test.html'));
});
var port = process.env.PORT || 1337;
var httpServer = require('http').createServer(app);
httpServer.listen(port, function() {
console.log('parse-server-example running on port ' + port + '.');
});
ParseServer.createLiveQueryServer(httpServer);
答
搜索网,尝试不同的东西,左看右看之后,我最终通过查找缺少什么。 我把它放在这里以防将来帮助别人。
在我的岗位解析服务器index.js缺少系是:
- verifyUserEmails:真实,
- APPNAME:上述 '解析应用程序',
的线条需要包含在内部:
var api = new ParseServer({
......
})
当您收到一封电子邮件时,您是否看到'heroku logs -tail'中两个应用程序之间存在任何差异T' – brennan
是的,我看到确实有很大的不同。在工作应用程序的情况下,创建新帐户时日志中会有大约10行跟踪,而单击电子邮件验证链接时会有另外几行。在非工作应用程序的情况下,日志中没有任何内容。我可以验证该帐户是否在数据库中创建,但没有验证邮件出现。是否有我可以检查是否所有设置都应该如此的事项清单? – Michel
我们可以看到解析服务器'index.js'吗?这两个应用程序共享相同的分析服务器吗?您还可以将环境变量与'heroku run printenv'进行比较。 – brennan