You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JS中导出Storyblok空间遇401及相关操作问题咨询

Storyblok管理API使用问题解决方案

一、401错误修复及正确调用语法

你的401错误主要由请求头格式错误和令牌权限配置问题导致,修正后的代码如下:

const spaceId = "你的空间ID";
// 优先使用空间专属管理令牌,而非个人访问令牌(需确保令牌拥有空间管理权限)
const managementToken = "你的管理令牌";

fetch(
  `https://mapi.storyblok.com/v2/spaces/${spaceId}/export.json`,
  {
    method: "GET",
    headers: {
      // 必须添加Bearer前缀,这是401的核心原因
      Authorization: `Bearer ${managementToken}`,
      "Content-Type": "application/json"
    },
  }
)
.then(async (res) => {
  if (!res.ok) throw new Error(`请求失败:${res.status}`);
  const json = await res.json();
  console.log(json);
})
.catch((err) => console.error(err));

关键注意事项:

  • 令牌选择:优先用空间设置里的「空间管理令牌」(路径:空间设置 → API密钥);若用个人访问令牌,需手动为该令牌分配目标空间的管理权限,否则会触发权限拦截。
  • 域名问题:美国区域的管理API无需加-us后缀,保持https://mapi.storyblok.com即可。

二、获取数字型storyId

你需要的8位数字storyId可通过两种方式获取:

  • 编辑页面URL:打开故事编辑界面,URL格式为app.storyblok.com/#!/edit/[数字ID]/...,中间的数字串就是storyId。
  • API查询:调用管理API的故事列表接口https://mapi.storyblok.com/v2/spaces/${spaceId}/stories,返回的每个story对象中id字段即为数字ID(uid是自定义标识符,无法用于导出接口)。

三、适配后续操作(增改故事、恢复空间)

上述修正的请求配置可直接复用在所有管理API操作中:

  • 增改故事:使用POST/PUT请求对应接口,保持相同的Authorization头格式。
  • 恢复空间:调用导入接口时,确保令牌拥有空间写入权限,请求头规则一致。
  • Nuxt3中可封装工具函数统一处理,示例:
// utils/storyblokManagement.js
export const useStoryblokManagement = () => {
  const config = useRuntimeConfig();
  const baseUrl = "https://mapi.storyblok.com/v2";
  const headers = {
    Authorization: `Bearer ${config.public.storyblokManagementToken}`,
    "Content-Type": "application/json"
  };

  return {
    // 导出整个空间
    async fetchSpaceExport(spaceId) {
      const res = await fetch(`${baseUrl}/spaces/${spaceId}/export.json`, { headers });
      if (!res.ok) throw new Error(res.statusText);
      return res.json();
    },
    // 更新故事
    async updateStory(spaceId, storyId, storyData) {
      const res = await fetch(`${baseUrl}/spaces/${spaceId}/stories/${storyId}`, {
        method: "PUT",
        headers,
        body: JSON.stringify({ story: storyData })
      });
      return res.json();
    }
    // 可扩展恢复空间等其他方法
  };
};

内容的提问来源于stack exchange,提问作者Paulie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 18:20:57