首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >设置Stormpath配置选项

设置Stormpath配置选项
EN

Stack Overflow用户
提问于 2015-09-07 01:54:39
回答 1查看 156关注 0票数 1

我正在尝试使用Stormpath自定义注册页面,但我不明白为什么配置选项不起作用。enableXXX和requireXXX正常工作,但web:{...}中的任何信息都未显示。我尝试重新排序选项,但也不起作用。

具体地说,我想:

--在/signup而不是/register上注册用户。现在只有/register在工作。

--我想在注册后将他们重定向到另一个站点。我随机将google.com放在其中,但在注册完成后,我仍然被重定向到"/“。

--我想对注册字段重新排序。我希望电子邮件是第一个字段,但用户名目前是第一个。

下面是app.js:

代码语言:javascript
复制
// Import required modules.
var express = require('express');
var stormpath = require('express-stormpath');
var path = require('path');
var engine = require('ejs-mate');
var app = express();

// use ejs-locals for all ejs templates: 
  app.engine('ejs', engine);

// Configure public views
  app.set('views','./views');

app.use(stormpath.init(app, {
  apiKeyFile: process.env[(process.platform == 'win32') ? 'USERPROFILE' : 'HOME'] + ~removed
  secretKey: '~removed',
  application: '~removed',
  enableRegistration: true,
  enableGivenName: false,
  requireGivenName: false,
  enableSurname: false,
  requireSurname: false,
  website: true,
  api: true,
  web: {
    register: {
      uri: '/signup',  // Use a different URL
      nextUri: 'http://google.com',    // Where to send the user to, if auto login is enabled
      fields: {
        passwordConfirm: {
          enabled: true,
          required: true
        }
      },
      fieldOrder: [ "email", "username", "password", "passwordConfirm" ],

    }
  },
  enableUsername: true,
  requireUsername: true,
  enableConfirmPassword: true,
  requireConfirmPassword: true

}
));

app.get('/', function(req, res) {
  res.render('home.ejs', {
    title: 'Welcome'
  });
});

app.get('/', function(req, res) {
  res.send('home page!');
});

app.listen(process.env.PORT || 3000);

其他可能的相关信息:

--站点托管在Heroku上,但我没有使用Stormpath附加组件,因为我无法让它工作。

--我用的是Mac。

我已经被困在这个问题上好几天了,我还不能找出我做错了什么。任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2015-10-15 08:03:46

问题可能是这样的:我们最近发布了这个库的新版本,它具有新的配置选项,似乎您正在使用我们的旧文档作为参考。

下面是你想要做的:

更新到最新的express-stormpath版本。然后使用下面的代码:(我将您的示例转换为适用于最新版本):

代码语言:javascript
复制
app.use(stormpath.init(app, {
  client: {
    apiKey: {
      file: process.env[(process.platform == 'win32') ? 'USERPROFILE' : 'HOME'] + '~removed'
    }
  },
  application: {
    href: '~removed',
  },
  web: {
    register: {
      enabled: true,
      uri: '/signup',
      nextUri: 'http://google.com',  // don't send them here =)
      fields: {
        username: {
          enabled: true,
          required: true
        },
        givenName: {
          enabled: false,
          required: false
        },
        surname: {
          enabled: false,
          required: false
        },
        passwordConfirm: {
          enabled: true,
          required: true
        }
      },
      fieldOrder: ['username', 'email', 'password', 'passwordConfirm']
    }
  },
  website: true,
  api: true
}));
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32426543

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档