首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >斯特拉皮v4 sanitizeEntity

斯特拉皮v4 sanitizeEntity
EN

Stack Overflow用户
提问于 2021-12-06 17:32:52
回答 5查看 4.4K关注 0票数 7

我现在正在试用新的strapi v4 (4.0.0)社区版。我有一个自定义控制器,它查询当前用户,并(在将来)获取相关对象。

在使用strapi v3执行此操作时,我使用内置的sanititzeEntitiy -助手函数从用户实例中删除敏感字段。然而,在v4中,这个函数似乎不再存在了,我想不出如何实现它。

有人能帮我吗?到目前为止我的代码是:

代码语言:javascript
复制
module.exports = {
  currentUser: async(ctx, next) => {
    let user = ctx.state.user;
    // TODO: sanitize this
  }
}

在v3中,我刚刚完成了return sanitizeEntity(user);,这将产生预期的效果。我只是不知道如何在v4中做到这一点,而且在文档中也找不到与此相关的任何内容。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2022-02-07 18:57:20

所以我同时在strapi社区论坛上发布了这个问题。一个名为JustJerem的用户给了我一个问题的答案,这个问题看起来是这样的:

代码语言:javascript
复制
**const { sanitizeEntity } = require("strapi-utils/lib");**

module.exports = (plugin) => {

  plugin.controllers.user.deleteMe = async (ctx) => {
    const entity = await strapi.entityService.delete('plugin::users-permissions.user', user.id)
    var result = **sanitizeEntity(entity, { model: strapi.getModel('plugin::users-permissions.user') })**
    return result
  };
//...
};

在strapi论坛上,可以找到最初的答案:

https://forum.strapi.io/t/v4-0-0-sanitize-user-data/13326/4?u=derelektrischemoench

这个解决方案的所有学分都在strapi板上给JustJerem。这样做对我很有帮助。希望这也能帮到别人。

你好,德莱克崔克

票数 4
EN

Stack Overflow用户

发布于 2021-12-19 08:16:34

您需要使用"@strapi/utils“中的"sanitize”实用程序。

代码语言:javascript
复制
const { sanitize } = require('@strapi/utils');

module.exports = createCoreController('api::payment.payment', ({ strapi }) => ({
  async create(ctx) {
    const entity = await strapi.entityService.create('api::payment.payment', {
      data: {
        field1: 1,
        field2: 2,
      },
    });
    const sanitizedEntity = await sanitize.contentAPI.output(entity);

    return { data: sanitizedEntity };
  },
}));
票数 8
EN

Stack Overflow用户

发布于 2021-12-07 16:54:07

在Strapi v4中,它似乎被sanitizeOutput函数所取代。它接受实体,但看起来也需要传递上下文(ctx)。不过,官方文件中并没有对此作任何描述。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70249508

复制
相关文章

相似问题

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