我在我的桌游社区就是这么做的:每当有一个桌游被添加到我的数据库(或在我的数据库中重命名)时,都会创建一个/更新一个标签和两个自定义主题。
我没记错的话,在我做这个的时候,并没有一个单独创建标签的接口(但你可以在创建主题时添加一个新标签),但我能够使用批量标签上传来完成这个任务。
类似这样:
const formData = new FormData();
formData.append("file", Buffer.from("the-tag-name,an-optional-tag-group"), {
contentType: "text/csv",
filename: "tags.csv",
});
const { data } = await axios.post(`${process.env.DISCOURSE_URL}/tags/upload.json`, formData, {
headers: {
...formData.getHeaders(),
"Api-Key": process.env.API_KEY,
},
});