[{"data":1,"prerenderedAt":770},["ShallowReactive",2],{"navigation":3,"docs-\u002Fdocs\u002Fapi\u002Ftokens":72,"surround-\u002Fdocs\u002Fapi\u002Ftokens":765},[4],{"title":5,"path":6,"stem":7,"children":8,"page":38},"Docs","\u002Fdocs","docs",[9,39],{"title":10,"path":11,"stem":12,"children":13,"page":38},"Guide","\u002Fdocs\u002Fguide","docs\u002F1.guide",[14,18,22,26,30,34],{"title":15,"path":16,"stem":17},"介绍","\u002Fdocs\u002Fguide\u002Fintroduction","docs\u002F1.guide\u002F1.introduction",{"title":19,"path":20,"stem":21},"快速开始","\u002Fdocs\u002Fguide\u002Fquick-start","docs\u002F1.guide\u002F2.quick-start",{"title":23,"path":24,"stem":25},"配置说明","\u002Fdocs\u002Fguide\u002Fconfiguration","docs\u002F1.guide\u002F3.configuration",{"title":27,"path":28,"stem":29},"存储配置","\u002Fdocs\u002Fguide\u002Fstorage","docs\u002F1.guide\u002F4.storage",{"title":31,"path":32,"stem":33},"生产部署","\u002Fdocs\u002Fguide\u002Fdeployment","docs\u002F1.guide\u002F5.deployment",{"title":35,"path":36,"stem":37},"第三方客户端","\u002Fdocs\u002Fguide\u002Fclients","docs\u002F1.guide\u002F6.clients",false,{"title":40,"path":41,"stem":42,"children":43,"page":38},"Api","\u002Fdocs\u002Fapi","docs\u002F2.api",[44,48,52,56,60,64,68],{"title":45,"path":46,"stem":47},"概述","\u002Fdocs\u002Fapi\u002Foverview","docs\u002F2.api\u002F1.overview",{"title":49,"path":50,"stem":51},"认证","\u002Fdocs\u002Fapi\u002Fauthentication","docs\u002F2.api\u002F2.authentication",{"title":53,"path":54,"stem":55},"文件上传","\u002Fdocs\u002Fapi\u002Fupload","docs\u002F2.api\u002F3.upload",{"title":57,"path":58,"stem":59},"文件管理","\u002Fdocs\u002Fapi\u002Ffiles","docs\u002F2.api\u002F4.files",{"title":61,"path":62,"stem":63},"相册","\u002Fdocs\u002Fapi\u002Falbums","docs\u002F2.api\u002F5.albums",{"title":65,"path":66,"stem":67},"API Token","\u002Fdocs\u002Fapi\u002Ftokens","docs\u002F2.api\u002F6.tokens",{"title":69,"path":70,"stem":71},"管理员 API","\u002Fdocs\u002Fapi\u002Fadmin","docs\u002F2.api\u002F7.admin",{"id":73,"title":65,"body":74,"description":759,"extension":760,"meta":761,"navigation":762,"path":66,"seo":763,"stem":67,"__hash__":764},"docs\u002Fdocs\u002F2.api\u002F6.tokens.md",{"type":75,"value":76,"toc":744},"minimark",[77,86,152,156,185,189,202,206,258,305,308,422,435,439,448,455,458,558,596,600,610,613,617,620,631,642,650,656,660,671,685,691,694,726,729,740],[78,79,80,81,85],"p",{},"API Token 是为 PicGo、ShareX 等第三方客户端设计的",[82,83,84],"strong",{},"长期令牌","，与用户登录返回的 Access Token 相比：",[87,88,89,104],"table",{},[90,91,92],"thead",{},[93,94,95,99,102],"tr",{},[96,97,98],"th",{},"特性",[96,100,101],{},"Access Token",[96,103,65],{},[105,106,107,119,130,141],"tbody",{},[93,108,109,113,116],{},[110,111,112],"td",{},"有效期",[110,114,115],{},"2 小时",[110,117,118],{},"默认永久 \u002F 自定义",[93,120,121,124,127],{},[110,122,123],{},"刷新",[110,125,126],{},"通过 Refresh Token",[110,128,129],{},"不需要",[93,131,132,135,138],{},[110,133,134],{},"存储",[110,136,137],{},"仅内存",[110,139,140],{},"数据库（仅 SHA256 哈希）",[93,142,143,146,149],{},[110,144,145],{},"使用场景",[110,147,148],{},"Web 浏览器、短时会话",[110,150,151],{},"脚本、图床客户端",[153,154,155],"h2",{"id":155},"安全模型",[157,158,159,172,178],"ul",{},[160,161,162,163,167,168,171],"li",{},"创建 Token 时会生成随机字符串并立即 ",[164,165,166],"code",{},"SHA256"," 入库，",[82,169,170],{},"明文仅返回一次","。",[160,173,174,175,177],{},"客户端请求时传入明文，服务端 ",[164,176,166],{}," 后与数据库比对。",[160,179,180,181,184],{},"一旦丢失",[82,182,183],{},"无法找回","，只能删除后重新生成。",[153,186,188],{"id":187},"创建-token","创建 Token",[190,191,192],"endpoint",{},[78,193,194,195,198,199],{},"POST · ",[164,196,197],{},"\u002Fapi\u002Fv1\u002Ftokens"," · ",[82,200,201],{},"需认证",[203,204,205],"h3",{"id":205},"请求",[207,208,213],"pre",{"className":209,"code":210,"language":211,"meta":212,"style":212},"language-json shiki shiki-themes github-light github-dark","{\n  \"name\": \"PicGo MacBook\",\n  \"expires_in\": 365\n}\n","json","",[164,214,215,224,241,252],{"__ignoreMap":212},[216,217,220],"span",{"class":218,"line":219},"line",1,[216,221,223],{"class":222},"sVt8B","{\n",[216,225,227,231,234,238],{"class":218,"line":226},2,[216,228,230],{"class":229},"sj4cs","  \"name\"",[216,232,233],{"class":222},": ",[216,235,237],{"class":236},"sZZnC","\"PicGo MacBook\"",[216,239,240],{"class":222},",\n",[216,242,244,247,249],{"class":218,"line":243},3,[216,245,246],{"class":229},"  \"expires_in\"",[216,248,233],{"class":222},[216,250,251],{"class":229},"365\n",[216,253,255],{"class":218,"line":254},4,[216,256,257],{"class":222},"}\n",[87,259,260,273],{},[90,261,262],{},[93,263,264,267,270],{},[96,265,266],{},"字段",[96,268,269],{},"类型",[96,271,272],{},"说明",[105,274,275,288],{},[93,276,277,282,285],{},[110,278,279],{},[164,280,281],{},"name",[110,283,284],{},"string",[110,286,287],{},"必填，用于自己识别，最长 100 字符",[93,289,290,295,298],{},[110,291,292],{},[164,293,294],{},"expires_in",[110,296,297],{},"int | null",[110,299,300,301,304],{},"有效期天数，",[164,302,303],{},"null"," 或省略表示永不过期",[203,306,307],{"id":307},"响应",[207,309,311],{"className":209,"code":310,"language":211,"meta":212,"style":212},"{\n  \"code\": 0,\n  \"message\": \"success\",\n  \"data\": {\n    \"id\": \"token-uuid\",\n    \"name\": \"PicGo MacBook\",\n    \"token\": \"kite_pat_a1b2c3d4e5f6...\",\n    \"expires_at\": \"2027-04-17T10:00:00Z\",\n    \"created_at\": \"2026-04-17T10:00:00Z\"\n  }\n}\n",[164,312,313,317,329,341,349,362,374,387,400,411,417],{"__ignoreMap":212},[216,314,315],{"class":218,"line":219},[216,316,223],{"class":222},[216,318,319,322,324,327],{"class":218,"line":226},[216,320,321],{"class":229},"  \"code\"",[216,323,233],{"class":222},[216,325,326],{"class":229},"0",[216,328,240],{"class":222},[216,330,331,334,336,339],{"class":218,"line":243},[216,332,333],{"class":229},"  \"message\"",[216,335,233],{"class":222},[216,337,338],{"class":236},"\"success\"",[216,340,240],{"class":222},[216,342,343,346],{"class":218,"line":254},[216,344,345],{"class":229},"  \"data\"",[216,347,348],{"class":222},": {\n",[216,350,352,355,357,360],{"class":218,"line":351},5,[216,353,354],{"class":229},"    \"id\"",[216,356,233],{"class":222},[216,358,359],{"class":236},"\"token-uuid\"",[216,361,240],{"class":222},[216,363,365,368,370,372],{"class":218,"line":364},6,[216,366,367],{"class":229},"    \"name\"",[216,369,233],{"class":222},[216,371,237],{"class":236},[216,373,240],{"class":222},[216,375,377,380,382,385],{"class":218,"line":376},7,[216,378,379],{"class":229},"    \"token\"",[216,381,233],{"class":222},[216,383,384],{"class":236},"\"kite_pat_a1b2c3d4e5f6...\"",[216,386,240],{"class":222},[216,388,390,393,395,398],{"class":218,"line":389},8,[216,391,392],{"class":229},"    \"expires_at\"",[216,394,233],{"class":222},[216,396,397],{"class":236},"\"2027-04-17T10:00:00Z\"",[216,399,240],{"class":222},[216,401,403,406,408],{"class":218,"line":402},9,[216,404,405],{"class":229},"    \"created_at\"",[216,407,233],{"class":222},[216,409,410],{"class":236},"\"2026-04-17T10:00:00Z\"\n",[216,412,414],{"class":218,"line":413},10,[216,415,416],{"class":222},"  }\n",[216,418,420],{"class":218,"line":419},11,[216,421,257],{"class":222},[423,424,425],"warning",{},[78,426,427,430,431,434],{},[164,428,429],{},"token"," 字段",[82,432,433],{},"仅在创建时返回一次","。请立刻复制保存；关闭此响应后无法再次查看明文。",[153,436,438],{"id":437},"token-列表","Token 列表",[190,440,441],{},[78,442,443,444,198,446],{},"GET · ",[164,445,197],{},[82,447,201],{},[78,449,450,451,454],{},"返回当前用户的所有 Token，",[82,452,453],{},"不包含","明文。",[203,456,307],{"id":457},"响应-1",[207,459,461],{"className":209,"code":460,"language":211,"meta":212,"style":212},"{\n  \"code\": 0,\n  \"data\": [\n    {\n      \"id\": \"token-uuid\",\n      \"name\": \"PicGo MacBook\",\n      \"last_used\": \"2026-04-17T09:30:00Z\",\n      \"expires_at\": \"2027-04-17T10:00:00Z\",\n      \"created_at\": \"2026-04-17T10:00:00Z\"\n    }\n  ]\n}\n",[164,462,463,467,477,484,489,500,511,523,534,543,548,553],{"__ignoreMap":212},[216,464,465],{"class":218,"line":219},[216,466,223],{"class":222},[216,468,469,471,473,475],{"class":218,"line":226},[216,470,321],{"class":229},[216,472,233],{"class":222},[216,474,326],{"class":229},[216,476,240],{"class":222},[216,478,479,481],{"class":218,"line":243},[216,480,345],{"class":229},[216,482,483],{"class":222},": [\n",[216,485,486],{"class":218,"line":254},[216,487,488],{"class":222},"    {\n",[216,490,491,494,496,498],{"class":218,"line":351},[216,492,493],{"class":229},"      \"id\"",[216,495,233],{"class":222},[216,497,359],{"class":236},[216,499,240],{"class":222},[216,501,502,505,507,509],{"class":218,"line":364},[216,503,504],{"class":229},"      \"name\"",[216,506,233],{"class":222},[216,508,237],{"class":236},[216,510,240],{"class":222},[216,512,513,516,518,521],{"class":218,"line":376},[216,514,515],{"class":229},"      \"last_used\"",[216,517,233],{"class":222},[216,519,520],{"class":236},"\"2026-04-17T09:30:00Z\"",[216,522,240],{"class":222},[216,524,525,528,530,532],{"class":218,"line":389},[216,526,527],{"class":229},"      \"expires_at\"",[216,529,233],{"class":222},[216,531,397],{"class":236},[216,533,240],{"class":222},[216,535,536,539,541],{"class":218,"line":402},[216,537,538],{"class":229},"      \"created_at\"",[216,540,233],{"class":222},[216,542,410],{"class":236},[216,544,545],{"class":218,"line":413},[216,546,547],{"class":222},"    }\n",[216,549,550],{"class":218,"line":419},[216,551,552],{"class":222},"  ]\n",[216,554,556],{"class":218,"line":555},12,[216,557,257],{"class":222},[87,559,560,568],{},[90,561,562],{},[93,563,564,566],{},[96,565,266],{},[96,567,272],{},[105,569,570,583],{},[93,571,572,577],{},[110,573,574],{},[164,575,576],{},"last_used",[110,578,579,580,582],{},"最近一次成功认证时间；",[164,581,303],{}," 表示未使用",[93,584,585,590],{},[110,586,587],{},[164,588,589],{},"expires_at",[110,591,592,593,595],{},"过期时间，",[164,594,303],{}," 表示永不过期",[153,597,599],{"id":598},"删除-token","删除 Token",[190,601,602],{},[78,603,604,605,198,608],{},"DELETE · ",[164,606,607],{},"\u002Fapi\u002Fv1\u002Ftokens\u002F:id",[82,609,201],{},[78,611,612],{},"删除后该 Token 立即失效。无法通过删除-创建恢复同一个 Token 值 —— 每次创建都是全新的随机串。",[153,614,616],{"id":615},"使用-token","使用 Token",[78,618,619],{},"在任意业务端点的请求头中使用：",[207,621,625],{"className":622,"code":623,"language":624,"meta":212,"style":212},"language-http shiki shiki-themes github-light github-dark","Authorization: Bearer kite_pat_a1b2c3d4e5f6...\n","http",[164,626,627],{"__ignoreMap":212},[216,628,629],{"class":218,"line":219},[216,630,623],{},[78,632,633,634,641],{},"对于兼容兰空协议的客户端（如 PicGo），请注意 ",[82,635,636,637,640],{},"token 字段必须包含 ",[164,638,639],{},"Bearer "," 前缀","：",[207,643,648],{"className":644,"code":646,"language":647},[645],"language-text","Token: Bearer kite_pat_a1b2c3d4e5f6...\n","text",[164,649,646],{"__ignoreMap":212},[78,651,652,653,171],{},"详见 ",[654,655,35],"a",{"href":36},[153,657,659],{"id":658},"token-能做什么","Token 能做什么？",[78,661,662,663,666,667,670],{},"API Token 在认证层面与 Access Token ",[82,664,665],{},"等价","，可访问",[82,668,669],{},"当前用户","可见的所有业务接口：",[157,672,673,676,679,682],{},[160,674,675],{},"✅ 上传、列表、删除当前用户的文件",[160,677,678],{},"✅ 操作当前用户的相册",[160,680,681],{},"✅ 查看个人资料与统计",[160,683,684],{},"❌ 访问管理员专用接口（即便用户是管理员，API Token 也仅拥有普通用户权限）",[686,687,688],"note",{},[78,689,690],{},"这是有意的设计 —— 避免 API Token 意外暴露后带来管理权限失守。管理员在后台操作请使用浏览器登录。",[153,692,693],{"id":693},"轮换建议",[157,695,696,711,720],{},[160,697,698,699,702,703,706,707,710],{},"为",[82,700,701],{},"每个客户端","单独创建 Token（如 ",[164,704,705],{},"PicGo-MBP","、",[164,708,709],{},"ShareX-Desktop","），便于丢失单个设备时只撤销对应 Token。",[160,712,713,714,719],{},"对关键环境（共享电脑、CI）设置",[82,715,716,717],{},"有限的 ",[164,718,294],{},"，到期自动失效。",[160,721,722,723,725],{},"定期查看 ",[164,724,576],{},"，清理不再使用的 Token。",[153,727,728],{"id":728},"下一步",[157,730,731,736],{},[160,732,733,735],{},[654,734,35],{"href":36}," · PicGo \u002F ShareX 配置示例",[160,737,738],{},[654,739,69],{"href":70},[741,742,743],"style",{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":212,"searchDepth":243,"depth":243,"links":745},[746,747,751,754,755,756,757,758],{"id":155,"depth":226,"text":155},{"id":187,"depth":226,"text":188,"children":748},[749,750],{"id":205,"depth":243,"text":205},{"id":307,"depth":243,"text":307},{"id":437,"depth":226,"text":438,"children":752},[753],{"id":457,"depth":243,"text":307},{"id":598,"depth":226,"text":599},{"id":615,"depth":226,"text":616},{"id":658,"depth":226,"text":659},{"id":693,"depth":226,"text":693},{"id":728,"depth":226,"text":728},"为第三方工具创建与管理长期 API 令牌。","md",{},{"title":65},{"title":65,"description":759},"hZDNJ6aHV2SZZ6vYzgZkqfgKJVuAM_zM5CRDjU0NQTs",[766,768],{"title":61,"path":62,"stem":63,"description":767,"children":-1},"相册的创建、更新、列表与删除。",{"title":69,"path":70,"stem":71,"description":769,"children":-1},"用户管理、存储配置、系统设置、安装向导等管理员专用接口。",1776443820594]