post(name, value) {
    if (!this[POST]) {
      const json = this.request.body && this.request.body.post;
      this[POST] = think.isArray(json) ? Array.from(json) : Object.assign({}, json);
      this.app.emit('filterParam', this[POST]);
    }
    if (!name) return this[POST];
    if (helper.isObject(name)) {
      this[POST] = Object.assign(this[POST], name);
      return this;
    }
    if (value === undefined) {
      // this.param('a,b')
      if (helper.isString(name) && name.indexOf(',') > -1) {
        name = name.split(/\s*,\s*/);
      }
      if (helper.isArray(name)) {
        const value = {};
        name.forEach(item => {
          const val = this[POST][item];
          if (val !== undefined) {
            value[item] = val;
          }
        });
        return value;
      }
      return this[POST][name];
    }
    this[POST][name] = value;
    return this;
  }
get or set post data
@param {String} name
@param {Mixed} value