1

我在这里遵循了文档:https ://github.com/stormpath/express-stormpath

错误:没有默认帐户存储映射到指定的应用程序

当我尝试运行我的应用程序时,我在控制台中收到上述错误。这很可能是我的代码有问题,还是我应该去 Stormpath 网站上的管理页面?

我使用 windows 命令 setx 来设置环境变量,如果我的 app.js 文件中有 api 密钥和秘密,我不确定是否需要这样做。对于这个问题,我用 XXXXXXXX 删除了敏感信息。

var express = require('express');
var app = express();

//Stormpath
var stormpath = require('express-stormpath');

//Init Stormpath
app.use(stormpath.init(app, {

    apiKey: {id:'XXXXXXXXXX', secret: 'XXXXXXXXXX'},
    secretKey: 'random_string_of_words_go_here',
    application: 'https://api.stormpath.com/v1/accounts/XXXXXXXXX'

}));

//home:
app.get('/', function(req, res){
    res.render('home');
    console.log(req.session);
});

app.get('/create-quiz', stormpath.loginRequired, function(req, res){
    res.render('createQuiz');
});


//404 page:
app.use(function(req, res, next){
    res.status(404);
    res.render('404');
});

//500 page:
app.use(function(err, req, res, next){
    console.error(err.stack);
    res.status(500);
    res.render('500');
});

app.on('stormpath.ready', function () {
    console.log('Stormpath ready...')
});

app.listen(app.get('port'), function(){
    console.log('Express started on http://localhost: ' + app.get('port') + '; Press ctrl-C to terminate.')
});

提前感谢您的帮助。

4

1 回答 1

3

是的!此错误很可能是因为您在管理控制台中配置了 Stormpath 应用程序。

每个应用程序都需要一个“目录”来存储您的帐户,而您似乎可能没有一个。

尝试登录 Stormpath 并在管理控制台中添加一个“目录”来存储您的帐户。如果这样做,请尝试确保选中“默认帐户位置”。

这是我的样子。希望这可以帮助!

Stormpath 应用程序页面

(来源:我在 Stormpath 工作)

于 2016-09-09T01:51:31.183 回答