0

有没有办法从 React 应用程序中更改特定条目的内容类型中某些字段的值。我想模拟喜欢/不喜欢按钮。因此,当用户单击按钮时,我想更改 CMS 中特定Entry的特定值。

有没有办法,例如,Contentful API在 React 中向 a 发出 POST 请求。或者更准确地说,因为我正在从Node.js环境进行 API 调用。

4

1 回答 1

0

为此,您可以利用 Contentful 管理 API。下面是一个示例,展示了如何增加一个title字段

client.getSpace('<space_id>')
.then((space) => space.getEnvironment('<environment-id>'))
.then((environment) => environment.getEntry('<entry_id>'))
.then((entry) => {
  entry.fields.title['en-US'] = 'New entry title'
  return entry.update()
})
.then((entry) => console.log(`Entry ${entry.sys.id} updated.`))
.catch(console.error)

要将数据写入 Contentful,您必须创建一个具有WRITE权限的令牌。通常,人们会在 API 密钥部分为此创建一个个人访问令牌。

⚠️ 但请确保不要泄露您的个人访问令牌。此令牌与创建它的登录用户具有相同的访问权限。WRITE这意味着,您不应该在 React 应用程序中使用具有权限的个人访问令牌。人们可以找到它并接管您的空间。

如果您的 React 应用程序正在与您控制的 Node.js 后端通信,那是安全的。

于 2022-03-03T19:46:36.000 回答