1.1.2 • Published 5 years ago

egg-parameters v1.1.2

Weekly downloads
40
License
MIT
Repository
github
Last release
5 years ago

egg-parameters

NPM version build status Test coverage David deps Known Vulnerabilities npm download

Merge all parameters (ctx.params, ctx.request.query, ctx.request.body) into ctx.params like Rails application.

Configuration

config/plugin.js

exports.parameters = {
  enable: true,
  package: 'egg-parameters',
};

config/config.default.js

exports.parameters = {
  logParameters: true,
  // param names that you want filter in log.
  filterParameters: ['password'],
};

Usage

When you add egg-parameters into your package.json this will enabled by default.

// app/controller/posts.js
module.exports = class {
  /**
   * POST /posts?title=jason&foo=1&user_id=123
   */
  async create() {
    const { ctx } = this;
    const postParam = ctx.params.permit('title', 'body')

    // postParam => { title: '', body: '' }
    // postParam.isPermitted() => true
    // :foo, :user_id will be filted

    // Now you can use safely for egg-sequelize create param
    const post = await ctx.model.Post.create(postParam);
    ctx.body = post;
  }
};
1.1.2

5 years ago

1.1.1

5 years ago

1.1.0

5 years ago

1.0.3

5 years ago

1.0.2

5 years ago

0.1.2

5 years ago

1.0.1

5 years ago

0.1.1

5 years ago

1.0.0

5 years ago

0.1.0

6 years ago

0.0.2

6 years ago

0.0.1

6 years ago