javascript - 如何在环回资源管理器中隐藏 'id' 属性?

标签 javascript node.js swagger loopbackjs strongloop

是否可以在Strongloop Loopback中explorer生成的swagger-ui中的方法中隐藏id属性? 我不希望用户创建新资源并发送 id 属性。我知道如果用户发送 ID 可以忽略它,但我想将它隐藏在资源管理器中。

最佳答案

为了隐藏'id'属性,you need declare this field as hidden.

在 YOUR_MODEL.json 文件中:

{
  "name": "YOUR_MODEL",
  .
  .
  .
  "properties": {
     // your custom properties
  },
  "hidden": ["id"], // this attribute specifies which attributes need to be hidden
  .
  .
  .
}

当属性声明为隐藏时要注意:

  1. 它不会暴露给用户
  2. 虽然隐藏,但如果用户发送提供了一个具有此属性的值,默认情况下不会忽略该属性,并将使用提供的值进行处理。因此,需要手动忽略。

例如,如果我们有如下“用户”模型:

{
  "name": "User",
  .
  .
  .
  "properties": {
     "id": "string",
     "name": "string",
     "password": "string",

  },
  "hidden": ["id", "password"],
  .
  .
}

/api/User GET 请求将提供具有仅“名称”属性

的用户列表

但是, /api/User POST with body:

{
  "user" : "USER",
  "password": "PASS",
  "id" : "USER_PROVIDED_ID"
}

正文中提供的用户将与其中的值一起保存。

关于javascript - 如何在环回资源管理器中隐藏 'id' 属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35039816/

相关文章:

javascript - 为什么对象键没有从对象中删除?

javascript - 使用 .sort(function (a, b) 按降序数字顺序列出解析的 xml 数据

javascript - 使用 Websockets 从 Java 端点发送图像

node.js - Mongoose 搜索多个字段

javascript - package.json 中的 Node 引擎 8.x 或 10.x

c# - Swagger 客户端将 none nullable 更改为 nullable

javascript - jQuery Datatables - 单击该行中的按钮时如何获取该行的索引

node.js - 将 React 应用程序部署到 github 页面。获取...net::ERR_ABORTED

python - 将多个 swagger 文档(来自不同的应用程序)合并到一个 swagger 仪表板 [drf_yasg]

c# - 为 ASP.NET Core 中的未绑定(bind)参数添加 swagger 参数