deploy: 8ed35ffe7e126cdd171298c791d61d44210e4885
This commit is contained in:
parent
4103a169af
commit
0785df4fe5
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -43,43 +43,43 @@ Table of Contents</button><nav id=toc-mobile><ul class=dropdown-menu><li><ul><li
|
|||||||
"uid": "用户唯一凭证"
|
"uid": "用户唯一凭证"
|
||||||
}
|
}
|
||||||
}</code>
|
}</code>
|
||||||
</pre></div><p><code>FastGPT</code> 将会判断<code>success</code>是否为<code>true</code>决定是允许用户继续操作。<code>message</code>与<code>msg</code>是等同的,你可以选择返回其中一个,当<code>success</code>不为<code>true</code>时,将会提示这个错误。</p><p><code>uid</code>是用户的唯一凭证,将会用于拉取对话记录以及保存对话记录。可参考下方实践案例。</p><h3 id=触发流程>触发流程 <a href=#%e8%a7%a6%e5%8f%91%e6%b5%81%e7%a8%8b class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><p><img src=https://cdn.jsdelivr.net/gh/yangchuansheng/fastgpt-imgs@main/imgs/sharelink_process.png alt loading=lazy class=medium-zoom-image></p><h2 id=配置教程>配置教程 <a href=#%e9%85%8d%e7%bd%ae%e6%95%99%e7%a8%8b class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h2><h3 id=1-配置身份校验地址>1. 配置身份校验地址 <a href=#1-%e9%85%8d%e7%bd%ae%e8%ba%ab%e4%bb%bd%e6%a0%a1%e9%aa%8c%e5%9c%b0%e5%9d%80 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><p><img src=https://cdn.jsdelivr.net/gh/yangchuansheng/fastgpt-imgs@main/imgs/share-setlink.png alt loading=lazy class=medium-zoom-image></p><p>配置校验地址后,在每次分享链接使用时,都会向对应的地址发起校验和上报请求。</p><div class="alert alert-default d-flex" role=alert><div class="flex-shrink-1 alert-icon"><p>🤖</p></div><div class=w-100><p>这里仅需配置根地址,无需具体到完整请求路径。</p></div></div><h3 id=2-分享链接中增加额外-query>2. 分享链接中增加额外 query <a href=#2-%e5%88%86%e4%ba%ab%e9%93%be%e6%8e%a5%e4%b8%ad%e5%a2%9e%e5%8a%a0%e9%a2%9d%e5%a4%96-query class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><p>在分享链接的地址中,增加一个额外的参数: authToken。例如:</p><p>原始的链接:<code>https://share.tryfastgpt.ai/chat/share?shareId=648aaf5ae121349a16d62192</code></p><p>完整链接: <code>https://share.tryfastgpt.ai/chat/share?shareId=648aaf5ae121349a16d62192&authToken=userid12345</code></p><p>这个<code>authToken</code>通常是你系统生成的用户唯一凭证(Token之类的)。FastGPT 会在鉴权接口的<code>body</code>中携带 token={{authToken}} 的参数。</p><h3 id=3-编写聊天初始化校验接口>3. 编写聊天初始化校验接口 <a href=#3-%e7%bc%96%e5%86%99%e8%81%8a%e5%a4%a9%e5%88%9d%e5%a7%8b%e5%8c%96%e6%a0%a1%e9%aa%8c%e6%8e%a5%e5%8f%a3 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=daefcbTab data-bs-toggle=tab data-bs-target=#daefcb type=button role=tab aria-controls=daefcb aria-selected=true>请求示例</a>
|
</pre></div><p><code>FastGPT</code> 将会判断<code>success</code>是否为<code>true</code>决定是允许用户继续操作。<code>message</code>与<code>msg</code>是等同的,你可以选择返回其中一个,当<code>success</code>不为<code>true</code>时,将会提示这个错误。</p><p><code>uid</code>是用户的唯一凭证,将会用于拉取对话记录以及保存对话记录。可参考下方实践案例。</p><h3 id=触发流程>触发流程 <a href=#%e8%a7%a6%e5%8f%91%e6%b5%81%e7%a8%8b class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><p><img src=https://cdn.jsdelivr.net/gh/yangchuansheng/fastgpt-imgs@main/imgs/sharelink_process.png alt loading=lazy class=medium-zoom-image></p><h2 id=配置教程>配置教程 <a href=#%e9%85%8d%e7%bd%ae%e6%95%99%e7%a8%8b class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h2><h3 id=1-配置身份校验地址>1. 配置身份校验地址 <a href=#1-%e9%85%8d%e7%bd%ae%e8%ba%ab%e4%bb%bd%e6%a0%a1%e9%aa%8c%e5%9c%b0%e5%9d%80 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><p><img src=https://cdn.jsdelivr.net/gh/yangchuansheng/fastgpt-imgs@main/imgs/share-setlink.png alt loading=lazy class=medium-zoom-image></p><p>配置校验地址后,在每次分享链接使用时,都会向对应的地址发起校验和上报请求。</p><div class="alert alert-default d-flex" role=alert><div class="flex-shrink-1 alert-icon"><p>🤖</p></div><div class=w-100><p>这里仅需配置根地址,无需具体到完整请求路径。</p></div></div><h3 id=2-分享链接中增加额外-query>2. 分享链接中增加额外 query <a href=#2-%e5%88%86%e4%ba%ab%e9%93%be%e6%8e%a5%e4%b8%ad%e5%a2%9e%e5%8a%a0%e9%a2%9d%e5%a4%96-query class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><p>在分享链接的地址中,增加一个额外的参数: authToken。例如:</p><p>原始的链接:<code>https://share.tryfastgpt.ai/chat/share?shareId=648aaf5ae121349a16d62192</code></p><p>完整链接: <code>https://share.tryfastgpt.ai/chat/share?shareId=648aaf5ae121349a16d62192&authToken=userid12345</code></p><p>这个<code>authToken</code>通常是你系统生成的用户唯一凭证(Token之类的)。FastGPT 会在鉴权接口的<code>body</code>中携带 token={{authToken}} 的参数。</p><h3 id=3-编写聊天初始化校验接口>3. 编写聊天初始化校验接口 <a href=#3-%e7%bc%96%e5%86%99%e8%81%8a%e5%a4%a9%e5%88%9d%e5%a7%8b%e5%8c%96%e6%a0%a1%e9%aa%8c%e6%8e%a5%e5%8f%a3 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=bfadecTab data-bs-toggle=tab data-bs-target=#bfadec type=button role=tab aria-controls=bfadec aria-selected=true>请求示例</a>
|
||||||
<a class=nav-link id=cbefadTab data-bs-toggle=tab data-bs-target=#cbefad type=button role=tab aria-controls=cbefad aria-selected=true>鉴权成功</a>
|
<a class=nav-link id=dbecafTab data-bs-toggle=tab data-bs-target=#dbecaf type=button role=tab aria-controls=dbecaf aria-selected=true>鉴权成功</a>
|
||||||
<a class=nav-link id=bdfecaTab data-bs-toggle=tab data-bs-target=#bdfeca type=button role=tab aria-controls=bdfeca aria-selected=true>鉴权失败</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=daefcb role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=39d214b class=language-bash>
|
<a class=nav-link id=cebfadTab data-bs-toggle=tab data-bs-target=#cebfad type=button role=tab aria-controls=cebfad aria-selected=true>鉴权失败</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=bfadec role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=39d214b class=language-bash>
|
||||||
<code>curl --location --request POST '{{host}}/shareAuth/init' \
|
<code>curl --location --request POST '{{host}}/shareAuth/init' \
|
||||||
--header 'Content-Type: application/json' \
|
--header 'Content-Type: application/json' \
|
||||||
--data-raw '{
|
--data-raw '{
|
||||||
"token": "{{authToken}}"
|
"token": "{{authToken}}"
|
||||||
}'</code>
|
}'</code>
|
||||||
</pre></div></div><div class="tab-pane fade" id=cbefad role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=d6c7899 class=language-json>
|
</pre></div></div><div class="tab-pane fade" id=dbecaf role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=d6c7899 class=language-json>
|
||||||
<code>{
|
<code>{
|
||||||
"success": true,
|
"success": true,
|
||||||
"data": {
|
"data": {
|
||||||
"uid": "用户唯一凭证"
|
"uid": "用户唯一凭证"
|
||||||
}
|
}
|
||||||
}</code>
|
}</code>
|
||||||
</pre></div><p>系统会拉取该分享链接下,uid 为 username123 的对话记录。</p></div><div class="tab-pane fade" id=bdfeca role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=3297f92 class=language-json>
|
</pre></div><p>系统会拉取该分享链接下,uid 为 username123 的对话记录。</p></div><div class="tab-pane fade" id=cebfad role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=3297f92 class=language-json>
|
||||||
<code>{
|
<code>{
|
||||||
"success": false,
|
"success": false,
|
||||||
"message": "身份错误",
|
"message": "身份错误",
|
||||||
}</code>
|
}</code>
|
||||||
</pre></div></div></div><h3 id=4-编写对话前校验接口>4. 编写对话前校验接口 <a href=#4-%e7%bc%96%e5%86%99%e5%af%b9%e8%af%9d%e5%89%8d%e6%a0%a1%e9%aa%8c%e6%8e%a5%e5%8f%a3 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=abecdfTab data-bs-toggle=tab data-bs-target=#abecdf type=button role=tab aria-controls=abecdf aria-selected=true>请求示例</a>
|
</pre></div></div></div><h3 id=4-编写对话前校验接口>4. 编写对话前校验接口 <a href=#4-%e7%bc%96%e5%86%99%e5%af%b9%e8%af%9d%e5%89%8d%e6%a0%a1%e9%aa%8c%e6%8e%a5%e5%8f%a3 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=efcdabTab data-bs-toggle=tab data-bs-target=#efcdab type=button role=tab aria-controls=efcdab aria-selected=true>请求示例</a>
|
||||||
<a class=nav-link id=dabfceTab data-bs-toggle=tab data-bs-target=#dabfce type=button role=tab aria-controls=dabfce aria-selected=true>鉴权成功</a>
|
<a class=nav-link id=edbcfaTab data-bs-toggle=tab data-bs-target=#edbcfa type=button role=tab aria-controls=edbcfa aria-selected=true>鉴权成功</a>
|
||||||
<a class=nav-link id=fecdabTab data-bs-toggle=tab data-bs-target=#fecdab type=button role=tab aria-controls=fecdab aria-selected=true>鉴权失败</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=abecdf role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=40c1d59 class=language-bash>
|
<a class=nav-link id=dbacfeTab data-bs-toggle=tab data-bs-target=#dbacfe type=button role=tab aria-controls=dbacfe aria-selected=true>鉴权失败</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=efcdab role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=40c1d59 class=language-bash>
|
||||||
<code>curl --location --request POST '{{host}}/shareAuth/start' \
|
<code>curl --location --request POST '{{host}}/shareAuth/start' \
|
||||||
--header 'Content-Type: application/json' \
|
--header 'Content-Type: application/json' \
|
||||||
--data-raw '{
|
--data-raw '{
|
||||||
"token": "{{authToken}}",
|
"token": "{{authToken}}",
|
||||||
"question": "用户问题",
|
"question": "用户问题",
|
||||||
}'</code>
|
}'</code>
|
||||||
</pre></div></div><div class="tab-pane fade" id=dabfce role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=d6c7899 class=language-json>
|
</pre></div></div><div class="tab-pane fade" id=edbcfa role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=d6c7899 class=language-json>
|
||||||
<code>{
|
<code>{
|
||||||
"success": true,
|
"success": true,
|
||||||
"data": {
|
"data": {
|
||||||
"uid": "用户唯一凭证"
|
"uid": "用户唯一凭证"
|
||||||
}
|
}
|
||||||
}</code>
|
}</code>
|
||||||
</pre></div></div><div class="tab-pane fade" id=fecdab role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=23a56e7 class=language-json>
|
</pre></div></div><div class="tab-pane fade" id=dbacfe role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=23a56e7 class=language-json>
|
||||||
<code>{
|
<code>{
|
||||||
"success": false,
|
"success": false,
|
||||||
"message": "身份验证失败",
|
"message": "身份验证失败",
|
||||||
@ -202,9 +202,9 @@ Table of Contents</button><nav id=toc-mobile><ul class=dropdown-menu><li><ul><li
|
|||||||
|
|
||||||
isElseResult?: boolean; // 判断器结果
|
isElseResult?: boolean; // 判断器结果
|
||||||
}</code>
|
}</code>
|
||||||
</pre></div><h2 id=实践案例>实践案例 <a href=#%e5%ae%9e%e8%b7%b5%e6%a1%88%e4%be%8b class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h2><p>我们以<a href=https://laf.dev/ rel=external target=_blank>Laf作为服务器为例<svg width="16" height="16" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="currentcolor" d="M14 5c-.552.0-1-.448-1-1s.448-1 1-1h6c.552.0 1 .448 1 1v6c0 .552-.448 1-1 1s-1-.448-1-1V6.414l-7.293 7.293c-.391.39-1.024.39-1.414.0-.391-.391-.391-1.024.0-1.414L17.586 5H14zM5 7c-.552.0-1 .448-1 1v11c0 .552.448 1 1 1h11c.552.0 1-.448 1-1v-4.563c0-.552.448-1 1-1s1 .448 1 1V19c0 1.657-1.343 3-3 3H5c-1.657.0-3-1.343-3-3V8c0-1.657 1.343-3 3-3h4.563c.552.0 1 .448 1 1s-.448 1-1 1H5z"/></svg></a>,简单展示这 3 个接口的使用方式。</p><h3 id=1-创建3个laf接口>1. 创建3个Laf接口 <a href=#1-%e5%88%9b%e5%bb%ba3%e4%b8%aalaf%e6%8e%a5%e5%8f%a3 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><p><img src=https://cdn.jsdelivr.net/gh/yangchuansheng/fastgpt-imgs@main/imgs/share-auth1.png alt loading=lazy class=medium-zoom-image></p><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=afcebdTab data-bs-toggle=tab data-bs-target=#afcebd type=button role=tab aria-controls=afcebd aria-selected=true>/shareAuth/init</a>
|
</pre></div><h2 id=实践案例>实践案例 <a href=#%e5%ae%9e%e8%b7%b5%e6%a1%88%e4%be%8b class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h2><p>我们以<a href=https://laf.dev/ rel=external target=_blank>Laf作为服务器为例<svg width="16" height="16" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="currentcolor" d="M14 5c-.552.0-1-.448-1-1s.448-1 1-1h6c.552.0 1 .448 1 1v6c0 .552-.448 1-1 1s-1-.448-1-1V6.414l-7.293 7.293c-.391.39-1.024.39-1.414.0-.391-.391-.391-1.024.0-1.414L17.586 5H14zM5 7c-.552.0-1 .448-1 1v11c0 .552.448 1 1 1h11c.552.0 1-.448 1-1v-4.563c0-.552.448-1 1-1s1 .448 1 1V19c0 1.657-1.343 3-3 3H5c-1.657.0-3-1.343-3-3V8c0-1.657 1.343-3 3-3h4.563c.552.0 1 .448 1 1s-.448 1-1 1H5z"/></svg></a>,简单展示这 3 个接口的使用方式。</p><h3 id=1-创建3个laf接口>1. 创建3个Laf接口 <a href=#1-%e5%88%9b%e5%bb%ba3%e4%b8%aalaf%e6%8e%a5%e5%8f%a3 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><p><img src=https://cdn.jsdelivr.net/gh/yangchuansheng/fastgpt-imgs@main/imgs/share-auth1.png alt loading=lazy class=medium-zoom-image></p><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=cabdefTab data-bs-toggle=tab data-bs-target=#cabdef type=button role=tab aria-controls=cabdef aria-selected=true>/shareAuth/init</a>
|
||||||
<a class=nav-link id=baecfdTab data-bs-toggle=tab data-bs-target=#baecfd type=button role=tab aria-controls=baecfd aria-selected=true>/shareAuth/start</a>
|
<a class=nav-link id=dcaefbTab data-bs-toggle=tab data-bs-target=#dcaefb type=button role=tab aria-controls=dcaefb aria-selected=true>/shareAuth/start</a>
|
||||||
<a class=nav-link id=efcdabTab data-bs-toggle=tab data-bs-target=#efcdab type=button role=tab aria-controls=efcdab aria-selected=true>/shareAuth/finish</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=afcebd role=tabpanel aria-labelledby=nav-1><p>这个接口中,我们设置了<code>token</code>必须等于<code>fastgpt</code>才能通过校验。(实际生产中不建议固定写死)</p><div class=prism-codeblock><pre id=ba0b6c9 class=language-ts>
|
<a class=nav-link id=fecbadTab data-bs-toggle=tab data-bs-target=#fecbad type=button role=tab aria-controls=fecbad aria-selected=true>/shareAuth/finish</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=cabdef role=tabpanel aria-labelledby=nav-1><p>这个接口中,我们设置了<code>token</code>必须等于<code>fastgpt</code>才能通过校验。(实际生产中不建议固定写死)</p><div class=prism-codeblock><pre id=ba0b6c9 class=language-ts>
|
||||||
<code>import cloud from '@lafjs/cloud'
|
<code>import cloud from '@lafjs/cloud'
|
||||||
|
|
||||||
export default async function (ctx: FunctionContext) {
|
export default async function (ctx: FunctionContext) {
|
||||||
@ -217,7 +217,7 @@ export default async function (ctx: FunctionContext) {
|
|||||||
|
|
||||||
return { success: false,message:"身份错误" }
|
return { success: false,message:"身份错误" }
|
||||||
}</code>
|
}</code>
|
||||||
</pre></div></div><div class="tab-pane fade" id=baecfd role=tabpanel aria-labelledby=nav-1><p>这个接口中,我们设置了<code>token</code>必须等于<code>fastgpt</code>才能通过校验。并且如果问题中包含了<code>你</code>字,则会报错,用于模拟敏感校验。</p><div class=prism-codeblock><pre id=cf82db5 class=language-ts>
|
</pre></div></div><div class="tab-pane fade" id=dcaefb role=tabpanel aria-labelledby=nav-1><p>这个接口中,我们设置了<code>token</code>必须等于<code>fastgpt</code>才能通过校验。并且如果问题中包含了<code>你</code>字,则会报错,用于模拟敏感校验。</p><div class=prism-codeblock><pre id=cf82db5 class=language-ts>
|
||||||
<code>import cloud from '@lafjs/cloud'
|
<code>import cloud from '@lafjs/cloud'
|
||||||
|
|
||||||
export default async function (ctx: FunctionContext) {
|
export default async function (ctx: FunctionContext) {
|
||||||
@ -235,7 +235,7 @@ export default async function (ctx: FunctionContext) {
|
|||||||
|
|
||||||
return { success: true, data: { uid: "user1" } }
|
return { success: true, data: { uid: "user1" } }
|
||||||
}</code>
|
}</code>
|
||||||
</pre></div></div><div class="tab-pane fade" id=efcdab role=tabpanel aria-labelledby=nav-1><p>结果上报接口可自行进行逻辑处理。</p><div class=prism-codeblock><pre id=b3696df class=language-ts>
|
</pre></div></div><div class="tab-pane fade" id=fecbad role=tabpanel aria-labelledby=nav-1><p>结果上报接口可自行进行逻辑处理。</p><div class=prism-codeblock><pre id=b3696df class=language-ts>
|
||||||
<code>import cloud from '@lafjs/cloud'
|
<code>import cloud from '@lafjs/cloud'
|
||||||
|
|
||||||
export default async function (ctx: FunctionContext) {
|
export default async function (ctx: FunctionContext) {
|
||||||
|
|||||||
@ -176,12 +176,12 @@ Table of Contents</button><nav id=toc-mobile><ul class=dropdown-menu><li><ul><li
|
|||||||
- OAUTH2_MEMBER_NAME_MAP=
|
- OAUTH2_MEMBER_NAME_MAP=
|
||||||
# OAuth2 联系方式字段映射(选填)
|
# OAuth2 联系方式字段映射(选填)
|
||||||
- OAUTH2_CONTACT_MAP=</code>
|
- OAUTH2_CONTACT_MAP=</code>
|
||||||
</pre></div><h2 id=标准接口文档>标准接口文档 <a href=#%e6%a0%87%e5%87%86%e6%8e%a5%e5%8f%a3%e6%96%87%e6%a1%a3 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h2><p>以下是 FastGPT-pro 中,SSO 和成员同步的标准接口文档,如果需要对接非标准系统,可以参考该章节进行开发。</p><p><img src=https://cdn.jsdelivr.net/gh/yangchuansheng/fastgpt-imgs@main/imgs/sso18.png alt loading=lazy class=medium-zoom-image></p><p>FastGPT 提供如下标准接口支持:</p><ol><li><a href=https://example.com/login/oauth/getAuthURL rel=external target=_blank>https://example.com/login/oauth/getAuthURL<svg width="16" height="16" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="currentcolor" d="M14 5c-.552.0-1-.448-1-1s.448-1 1-1h6c.552.0 1 .448 1 1v6c0 .552-.448 1-1 1s-1-.448-1-1V6.414l-7.293 7.293c-.391.39-1.024.39-1.414.0-.391-.391-.391-1.024.0-1.414L17.586 5H14zM5 7c-.552.0-1 .448-1 1v11c0 .552.448 1 1 1h11c.552.0 1-.448 1-1v-4.563c0-.552.448-1 1-1s1 .448 1 1V19c0 1.657-1.343 3-3 3H5c-1.657.0-3-1.343-3-3V8c0-1.657 1.343-3 3-3h4.563c.552.0 1 .448 1 1s-.448 1-1 1H5z"/></svg></a> 获取鉴权重定向地址</li><li><a href="https://example.com/login/oauth/getUserInfo?code=xxxxx" rel=external target=_blank>https://example.com/login/oauth/getUserInfo?code=xxxxx<svg width="16" height="16" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="currentcolor" d="M14 5c-.552.0-1-.448-1-1s.448-1 1-1h6c.552.0 1 .448 1 1v6c0 .552-.448 1-1 1s-1-.448-1-1V6.414l-7.293 7.293c-.391.39-1.024.39-1.414.0-.391-.391-.391-1.024.0-1.414L17.586 5H14zM5 7c-.552.0-1 .448-1 1v11c0 .552.448 1 1 1h11c.552.0 1-.448 1-1v-4.563c0-.552.448-1 1-1s1 .448 1 1V19c0 1.657-1.343 3-3 3H5c-1.657.0-3-1.343-3-3V8c0-1.657 1.343-3 3-3h4.563c.552.0 1 .448 1 1s-.448 1-1 1H5z"/></svg></a> 消费 code,换取用户信息</li><li><a href=https://example.com/org/list rel=external target=_blank>https://example.com/org/list<svg width="16" height="16" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="currentcolor" d="M14 5c-.552.0-1-.448-1-1s.448-1 1-1h6c.552.0 1 .448 1 1v6c0 .552-.448 1-1 1s-1-.448-1-1V6.414l-7.293 7.293c-.391.39-1.024.39-1.414.0-.391-.391-.391-1.024.0-1.414L17.586 5H14zM5 7c-.552.0-1 .448-1 1v11c0 .552.448 1 1 1h11c.552.0 1-.448 1-1v-4.563c0-.552.448-1 1-1s1 .448 1 1V19c0 1.657-1.343 3-3 3H5c-1.657.0-3-1.343-3-3V8c0-1.657 1.343-3 3-3h4.563c.552.0 1 .448 1 1s-.448 1-1 1H5z"/></svg></a> 获取组织列表</li><li><a href=https://example.com/user/list rel=external target=_blank>https://example.com/user/list<svg width="16" height="16" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="currentcolor" d="M14 5c-.552.0-1-.448-1-1s.448-1 1-1h6c.552.0 1 .448 1 1v6c0 .552-.448 1-1 1s-1-.448-1-1V6.414l-7.293 7.293c-.391.39-1.024.39-1.414.0-.391-.391-.391-1.024.0-1.414L17.586 5H14zM5 7c-.552.0-1 .448-1 1v11c0 .552.448 1 1 1h11c.552.0 1-.448 1-1v-4.563c0-.552.448-1 1-1s1 .448 1 1V19c0 1.657-1.343 3-3 3H5c-1.657.0-3-1.343-3-3V8c0-1.657 1.343-3 3-3h4.563c.552.0 1 .448 1 1s-.448 1-1 1H5z"/></svg></a> 获取成员列表</li></ol><h3 id=获取-sso-登录重定向地址>获取 SSO 登录重定向地址 <a href=#%e8%8e%b7%e5%8f%96-sso-%e7%99%bb%e5%bd%95%e9%87%8d%e5%ae%9a%e5%90%91%e5%9c%b0%e5%9d%80 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><p>返回一个重定向登录地址,fastgpt 会自动重定向到该地址。redirect_uri 会自动拼接到该地址的 query中。</p><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=cbdeafTab data-bs-toggle=tab data-bs-target=#cbdeaf type=button role=tab aria-controls=cbdeaf aria-selected=true>请求示例</a>
|
</pre></div><h2 id=标准接口文档>标准接口文档 <a href=#%e6%a0%87%e5%87%86%e6%8e%a5%e5%8f%a3%e6%96%87%e6%a1%a3 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h2><p>以下是 FastGPT-pro 中,SSO 和成员同步的标准接口文档,如果需要对接非标准系统,可以参考该章节进行开发。</p><p><img src=https://cdn.jsdelivr.net/gh/yangchuansheng/fastgpt-imgs@main/imgs/sso18.png alt loading=lazy class=medium-zoom-image></p><p>FastGPT 提供如下标准接口支持:</p><ol><li><a href=https://example.com/login/oauth/getAuthURL rel=external target=_blank>https://example.com/login/oauth/getAuthURL<svg width="16" height="16" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="currentcolor" d="M14 5c-.552.0-1-.448-1-1s.448-1 1-1h6c.552.0 1 .448 1 1v6c0 .552-.448 1-1 1s-1-.448-1-1V6.414l-7.293 7.293c-.391.39-1.024.39-1.414.0-.391-.391-.391-1.024.0-1.414L17.586 5H14zM5 7c-.552.0-1 .448-1 1v11c0 .552.448 1 1 1h11c.552.0 1-.448 1-1v-4.563c0-.552.448-1 1-1s1 .448 1 1V19c0 1.657-1.343 3-3 3H5c-1.657.0-3-1.343-3-3V8c0-1.657 1.343-3 3-3h4.563c.552.0 1 .448 1 1s-.448 1-1 1H5z"/></svg></a> 获取鉴权重定向地址</li><li><a href="https://example.com/login/oauth/getUserInfo?code=xxxxx" rel=external target=_blank>https://example.com/login/oauth/getUserInfo?code=xxxxx<svg width="16" height="16" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="currentcolor" d="M14 5c-.552.0-1-.448-1-1s.448-1 1-1h6c.552.0 1 .448 1 1v6c0 .552-.448 1-1 1s-1-.448-1-1V6.414l-7.293 7.293c-.391.39-1.024.39-1.414.0-.391-.391-.391-1.024.0-1.414L17.586 5H14zM5 7c-.552.0-1 .448-1 1v11c0 .552.448 1 1 1h11c.552.0 1-.448 1-1v-4.563c0-.552.448-1 1-1s1 .448 1 1V19c0 1.657-1.343 3-3 3H5c-1.657.0-3-1.343-3-3V8c0-1.657 1.343-3 3-3h4.563c.552.0 1 .448 1 1s-.448 1-1 1H5z"/></svg></a> 消费 code,换取用户信息</li><li><a href=https://example.com/org/list rel=external target=_blank>https://example.com/org/list<svg width="16" height="16" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="currentcolor" d="M14 5c-.552.0-1-.448-1-1s.448-1 1-1h6c.552.0 1 .448 1 1v6c0 .552-.448 1-1 1s-1-.448-1-1V6.414l-7.293 7.293c-.391.39-1.024.39-1.414.0-.391-.391-.391-1.024.0-1.414L17.586 5H14zM5 7c-.552.0-1 .448-1 1v11c0 .552.448 1 1 1h11c.552.0 1-.448 1-1v-4.563c0-.552.448-1 1-1s1 .448 1 1V19c0 1.657-1.343 3-3 3H5c-1.657.0-3-1.343-3-3V8c0-1.657 1.343-3 3-3h4.563c.552.0 1 .448 1 1s-.448 1-1 1H5z"/></svg></a> 获取组织列表</li><li><a href=https://example.com/user/list rel=external target=_blank>https://example.com/user/list<svg width="16" height="16" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="currentcolor" d="M14 5c-.552.0-1-.448-1-1s.448-1 1-1h6c.552.0 1 .448 1 1v6c0 .552-.448 1-1 1s-1-.448-1-1V6.414l-7.293 7.293c-.391.39-1.024.39-1.414.0-.391-.391-.391-1.024.0-1.414L17.586 5H14zM5 7c-.552.0-1 .448-1 1v11c0 .552.448 1 1 1h11c.552.0 1-.448 1-1v-4.563c0-.552.448-1 1-1s1 .448 1 1V19c0 1.657-1.343 3-3 3H5c-1.657.0-3-1.343-3-3V8c0-1.657 1.343-3 3-3h4.563c.552.0 1 .448 1 1s-.448 1-1 1H5z"/></svg></a> 获取成员列表</li></ol><h3 id=获取-sso-登录重定向地址>获取 SSO 登录重定向地址 <a href=#%e8%8e%b7%e5%8f%96-sso-%e7%99%bb%e5%bd%95%e9%87%8d%e5%ae%9a%e5%90%91%e5%9c%b0%e5%9d%80 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><p>返回一个重定向登录地址,fastgpt 会自动重定向到该地址。redirect_uri 会自动拼接到该地址的 query中。</p><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=bafdceTab data-bs-toggle=tab data-bs-target=#bafdce type=button role=tab aria-controls=bafdce aria-selected=true>请求示例</a>
|
||||||
<a class=nav-link id=dfbeacTab data-bs-toggle=tab data-bs-target=#dfbeac type=button role=tab aria-controls=dfbeac aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=cbdeaf role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=3970eeb class=language-bash>
|
<a class=nav-link id=dcfebaTab data-bs-toggle=tab data-bs-target=#dcfeba type=button role=tab aria-controls=dcfeba aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=bafdce role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=3970eeb class=language-bash>
|
||||||
<code>curl -X GET "https://redict.example/login/oauth/getAuthURL?redirect_uri=xxx&state=xxxx" \
|
<code>curl -X GET "https://redict.example/login/oauth/getAuthURL?redirect_uri=xxx&state=xxxx" \
|
||||||
-H "Authorization: Bearer your_token_here" \
|
-H "Authorization: Bearer your_token_here" \
|
||||||
-H "Content-Type: application/json"</code>
|
-H "Content-Type: application/json"</code>
|
||||||
</pre></div></div><div class="tab-pane fade" id=dfbeac role=tabpanel aria-labelledby=nav-1><p>成功:</p><div class=prism-codeblock><pre id=8296736 class=language-JSON>
|
</pre></div></div><div class="tab-pane fade" id=dcfeba role=tabpanel aria-labelledby=nav-1><p>成功:</p><div class=prism-codeblock><pre id=8296736 class=language-JSON>
|
||||||
<code>{
|
<code>{
|
||||||
"success": true,
|
"success": true,
|
||||||
"message": "",
|
"message": "",
|
||||||
@ -193,12 +193,12 @@ Table of Contents</button><nav id=toc-mobile><ul class=dropdown-menu><li><ul><li
|
|||||||
"message": "错误信息",
|
"message": "错误信息",
|
||||||
"authURL": ""
|
"authURL": ""
|
||||||
}</code>
|
}</code>
|
||||||
</pre></div></div></div><h3 id=sso-获取用户信息>SSO 获取用户信息 <a href=#sso-%e8%8e%b7%e5%8f%96%e7%94%a8%e6%88%b7%e4%bf%a1%e6%81%af class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><p>该接口接受一个 code 参数作为鉴权,消费 code 返回用户信息。</p><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=afebdcTab data-bs-toggle=tab data-bs-target=#afebdc type=button role=tab aria-controls=afebdc aria-selected=true>请求示例</a>
|
</pre></div></div></div><h3 id=sso-获取用户信息>SSO 获取用户信息 <a href=#sso-%e8%8e%b7%e5%8f%96%e7%94%a8%e6%88%b7%e4%bf%a1%e6%81%af class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><p>该接口接受一个 code 参数作为鉴权,消费 code 返回用户信息。</p><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=edbfacTab data-bs-toggle=tab data-bs-target=#edbfac type=button role=tab aria-controls=edbfac aria-selected=true>请求示例</a>
|
||||||
<a class=nav-link id=dbefcaTab data-bs-toggle=tab data-bs-target=#dbefca type=button role=tab aria-controls=dbefca aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=afebdc role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=532f1a3 class=language-bash>
|
<a class=nav-link id=ebdcfaTab data-bs-toggle=tab data-bs-target=#ebdcfa type=button role=tab aria-controls=ebdcfa aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=edbfac role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=532f1a3 class=language-bash>
|
||||||
<code>curl -X GET "https://oauth.example/login/oauth/getUserInfo?code=xxxxxx" \
|
<code>curl -X GET "https://oauth.example/login/oauth/getUserInfo?code=xxxxxx" \
|
||||||
-H "Authorization: Bearer your_token_here" \
|
-H "Authorization: Bearer your_token_here" \
|
||||||
-H "Content-Type: application/json"</code>
|
-H "Content-Type: application/json"</code>
|
||||||
</pre></div></div><div class="tab-pane fade" id=dbefca role=tabpanel aria-labelledby=nav-1><p>成功:</p><div class=prism-codeblock><pre id=71afe34 class=language-JSON>
|
</pre></div></div><div class="tab-pane fade" id=ebdcfa role=tabpanel aria-labelledby=nav-1><p>成功:</p><div class=prism-codeblock><pre id=71afe34 class=language-JSON>
|
||||||
<code>{
|
<code>{
|
||||||
"success": true,
|
"success": true,
|
||||||
"message": "",
|
"message": "",
|
||||||
@ -215,12 +215,12 @@ Table of Contents</button><nav id=toc-mobile><ul class=dropdown-menu><li><ul><li
|
|||||||
"avatar": "",
|
"avatar": "",
|
||||||
"contact": ""
|
"contact": ""
|
||||||
}</code>
|
}</code>
|
||||||
</pre></div></div></div><h3 id=获取组织>获取组织 <a href=#%e8%8e%b7%e5%8f%96%e7%bb%84%e7%bb%87 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=fbdaceTab data-bs-toggle=tab data-bs-target=#fbdace type=button role=tab aria-controls=fbdace aria-selected=true>请求示例</a>
|
</pre></div></div></div><h3 id=获取组织>获取组织 <a href=#%e8%8e%b7%e5%8f%96%e7%bb%84%e7%bb%87 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=facedbTab data-bs-toggle=tab data-bs-target=#facedb type=button role=tab aria-controls=facedb aria-selected=true>请求示例</a>
|
||||||
<a class=nav-link id=afcedbTab data-bs-toggle=tab data-bs-target=#afcedb type=button role=tab aria-controls=afcedb aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=fbdace role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=d289d9a class=language-bash>
|
<a class=nav-link id=badcfeTab data-bs-toggle=tab data-bs-target=#badcfe type=button role=tab aria-controls=badcfe aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=facedb role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=d289d9a class=language-bash>
|
||||||
<code>curl -X GET "https://example.com/org/list" \
|
<code>curl -X GET "https://example.com/org/list" \
|
||||||
-H "Authorization: Bearer your_token_here" \
|
-H "Authorization: Bearer your_token_here" \
|
||||||
-H "Content-Type: application/json"</code>
|
-H "Content-Type: application/json"</code>
|
||||||
</pre></div></div><div class="tab-pane fade" id=afcedb role=tabpanel aria-labelledby=nav-1><p>⚠️注意:只能存在一个根部门。如果你的系统中存在多个根部门,需要先进行处理,加一个虚拟的根部门。返回值类型:</p><div class=prism-codeblock><pre id=1224f6e class=language-ts>
|
</pre></div></div><div class="tab-pane fade" id=badcfe role=tabpanel aria-labelledby=nav-1><p>⚠️注意:只能存在一个根部门。如果你的系统中存在多个根部门,需要先进行处理,加一个虚拟的根部门。返回值类型:</p><div class=prism-codeblock><pre id=1224f6e class=language-ts>
|
||||||
<code>type OrgListResponseType = {
|
<code>type OrgListResponseType = {
|
||||||
message?: string; // 报错信息
|
message?: string; // 报错信息
|
||||||
success: boolean;
|
success: boolean;
|
||||||
@ -247,12 +247,12 @@ Table of Contents</button><nav id=toc-mobile><ul class=dropdown-menu><li><ul><li
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
}</code>
|
}</code>
|
||||||
</pre></div></div></div><h3 id=获取成员>获取成员 <a href=#%e8%8e%b7%e5%8f%96%e6%88%90%e5%91%98 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=acfbedTab data-bs-toggle=tab data-bs-target=#acfbed type=button role=tab aria-controls=acfbed aria-selected=true>请求示例</a>
|
</pre></div></div></div><h3 id=获取成员>获取成员 <a href=#%e8%8e%b7%e5%8f%96%e6%88%90%e5%91%98 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=cdebfaTab data-bs-toggle=tab data-bs-target=#cdebfa type=button role=tab aria-controls=cdebfa aria-selected=true>请求示例</a>
|
||||||
<a class=nav-link id=adcefbTab data-bs-toggle=tab data-bs-target=#adcefb type=button role=tab aria-controls=adcefb aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=acfbed role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=bc9e9ec class=language-bash>
|
<a class=nav-link id=cbdefaTab data-bs-toggle=tab data-bs-target=#cbdefa type=button role=tab aria-controls=cbdefa aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=cdebfa role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=bc9e9ec class=language-bash>
|
||||||
<code>curl -X GET "https://example.com/user/list" \
|
<code>curl -X GET "https://example.com/user/list" \
|
||||||
-H "Authorization: Bearer your_token_here" \
|
-H "Authorization: Bearer your_token_here" \
|
||||||
-H "Content-Type: application/json"</code>
|
-H "Content-Type: application/json"</code>
|
||||||
</pre></div></div><div class="tab-pane fade" id=adcefb role=tabpanel aria-labelledby=nav-1><p>返回值类型:</p><div class=prism-codeblock><pre id=0315dd3 class=language-typescript>
|
</pre></div></div><div class="tab-pane fade" id=cbdefa role=tabpanel aria-labelledby=nav-1><p>返回值类型:</p><div class=prism-codeblock><pre id=0315dd3 class=language-typescript>
|
||||||
<code>type UserListResponseListType = {
|
<code>type UserListResponseListType = {
|
||||||
message?: string; // 报错信息
|
message?: string; // 报错信息
|
||||||
success: boolean;
|
success: boolean;
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@ -50,8 +50,8 @@ type FileListItem = {
|
|||||||
updateTime: Date;
|
updateTime: Date;
|
||||||
createTime: Date;
|
createTime: Date;
|
||||||
}</code>
|
}</code>
|
||||||
</pre></div><h3 id=1-获取文件树>1. 获取文件树 <a href=#1-%e8%8e%b7%e5%8f%96%e6%96%87%e4%bb%b6%e6%a0%91 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=afecbdTab data-bs-toggle=tab data-bs-target=#afecbd type=button role=tab aria-controls=afecbd aria-selected=true>请求示例</a>
|
</pre></div><h3 id=1-获取文件树>1. 获取文件树 <a href=#1-%e8%8e%b7%e5%8f%96%e6%96%87%e4%bb%b6%e6%a0%91 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=fcaebdTab data-bs-toggle=tab data-bs-target=#fcaebd type=button role=tab aria-controls=fcaebd aria-selected=true>请求示例</a>
|
||||||
<a class=nav-link id=dcbafeTab data-bs-toggle=tab data-bs-target=#dcbafe type=button role=tab aria-controls=dcbafe aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=afecbd role=tabpanel aria-labelledby=nav-1><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"></div><div class=w-100><ul><li>parentId - 父级 id,可选,或者 null | undefined。</li><li>searchKey - 检索词,可选</li></ul></div></div><div class=prism-codeblock><pre id=25aa990 class=language-bash>
|
<a class=nav-link id=abdefcTab data-bs-toggle=tab data-bs-target=#abdefc type=button role=tab aria-controls=abdefc aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=fcaebd role=tabpanel aria-labelledby=nav-1><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"></div><div class=w-100><ul><li>parentId - 父级 id,可选,或者 null | undefined。</li><li>searchKey - 检索词,可选</li></ul></div></div><div class=prism-codeblock><pre id=25aa990 class=language-bash>
|
||||||
<code>curl --location --request POST '{{baseURL}}/v1/file/list' \
|
<code>curl --location --request POST '{{baseURL}}/v1/file/list' \
|
||||||
--header 'Authorization: Bearer {{authorization}}' \
|
--header 'Authorization: Bearer {{authorization}}' \
|
||||||
--header 'Content-Type: application/json' \
|
--header 'Content-Type: application/json' \
|
||||||
@ -59,7 +59,7 @@ type FileListItem = {
|
|||||||
"parentId": "",
|
"parentId": "",
|
||||||
"searchKey": ""
|
"searchKey": ""
|
||||||
}'</code>
|
}'</code>
|
||||||
</pre></div></div><div class="tab-pane fade" id=dcbafe role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=ee58785 class=language-json>
|
</pre></div></div><div class="tab-pane fade" id=abdefc role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=ee58785 class=language-json>
|
||||||
<code>{
|
<code>{
|
||||||
"code": 200,
|
"code": 200,
|
||||||
"success": true,
|
"success": true,
|
||||||
@ -75,12 +75,12 @@ type FileListItem = {
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
}</code>
|
}</code>
|
||||||
</pre></div></div></div><h3 id=2-获取单个文件内容文本内容或访问链接>2. 获取单个文件内容(文本内容或访问链接) <a href=#2-%e8%8e%b7%e5%8f%96%e5%8d%95%e4%b8%aa%e6%96%87%e4%bb%b6%e5%86%85%e5%ae%b9%e6%96%87%e6%9c%ac%e5%86%85%e5%ae%b9%e6%88%96%e8%ae%bf%e9%97%ae%e9%93%be%e6%8e%a5 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=adcebfTab data-bs-toggle=tab data-bs-target=#adcebf type=button role=tab aria-controls=adcebf aria-selected=true>请求示例</a>
|
</pre></div></div></div><h3 id=2-获取单个文件内容文本内容或访问链接>2. 获取单个文件内容(文本内容或访问链接) <a href=#2-%e8%8e%b7%e5%8f%96%e5%8d%95%e4%b8%aa%e6%96%87%e4%bb%b6%e5%86%85%e5%ae%b9%e6%96%87%e6%9c%ac%e5%86%85%e5%ae%b9%e6%88%96%e8%ae%bf%e9%97%ae%e9%93%be%e6%8e%a5 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=bcefadTab data-bs-toggle=tab data-bs-target=#bcefad type=button role=tab aria-controls=bcefad aria-selected=true>请求示例</a>
|
||||||
<a class=nav-link id=cbdfeaTab data-bs-toggle=tab data-bs-target=#cbdfea type=button role=tab aria-controls=cbdfea aria-selected=true>响应示例</a>
|
<a class=nav-link id=fcedbaTab data-bs-toggle=tab data-bs-target=#fcedba type=button role=tab aria-controls=fcedba aria-selected=true>响应示例</a>
|
||||||
<a class=nav-link id=Tab data-bs-toggle=tab data-bs-target=# type=button role=tab aria-controls aria-selected=true></a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=adcebf role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=1de88d3 class=language-bash>
|
<a class=nav-link id=Tab data-bs-toggle=tab data-bs-target=# type=button role=tab aria-controls aria-selected=true></a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=bcefad role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=1de88d3 class=language-bash>
|
||||||
<code>curl --location --request GET '{{baseURL}}/v1/file/content?id=xx' \
|
<code>curl --location --request GET '{{baseURL}}/v1/file/content?id=xx' \
|
||||||
--header 'Authorization: Bearer {{authorization}}'</code>
|
--header 'Authorization: Bearer {{authorization}}'</code>
|
||||||
</pre></div></div><div class="tab-pane fade" id=cbdfea role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=bcbc70a class=language-json>
|
</pre></div></div><div class="tab-pane fade" id=fcedba role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=bcbc70a class=language-json>
|
||||||
<code>{
|
<code>{
|
||||||
"code": 200,
|
"code": 200,
|
||||||
"success": true,
|
"success": true,
|
||||||
@ -91,11 +91,11 @@ type FileListItem = {
|
|||||||
"previewUrl": "xxxx"
|
"previewUrl": "xxxx"
|
||||||
}
|
}
|
||||||
}</code>
|
}</code>
|
||||||
</pre></div><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"></div><div class=w-100><ul><li>title - 文件标题。</li><li>content - 文件内容,直接拿来用。</li><li>previewUrl - 文件链接,系统会请求该地址获取文件内容。</li></ul><p><code>content</code>和<code>previewUrl</code>二选一返回,如果同时返回则 <code>content</code> 优先级更高,返回 <code>previewUrl</code>时,则会访问该链接进行文档内容读取。</p></div></div></div></div><h3 id=3-获取文件阅读链接用于查看原文>3. 获取文件阅读链接(用于查看原文) <a href=#3-%e8%8e%b7%e5%8f%96%e6%96%87%e4%bb%b6%e9%98%85%e8%af%bb%e9%93%be%e6%8e%a5%e7%94%a8%e4%ba%8e%e6%9f%a5%e7%9c%8b%e5%8e%9f%e6%96%87 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=edbcafTab data-bs-toggle=tab data-bs-target=#edbcaf type=button role=tab aria-controls=edbcaf aria-selected=true>请求示例</a>
|
</pre></div><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"></div><div class=w-100><ul><li>title - 文件标题。</li><li>content - 文件内容,直接拿来用。</li><li>previewUrl - 文件链接,系统会请求该地址获取文件内容。</li></ul><p><code>content</code>和<code>previewUrl</code>二选一返回,如果同时返回则 <code>content</code> 优先级更高,返回 <code>previewUrl</code>时,则会访问该链接进行文档内容读取。</p></div></div></div></div><h3 id=3-获取文件阅读链接用于查看原文>3. 获取文件阅读链接(用于查看原文) <a href=#3-%e8%8e%b7%e5%8f%96%e6%96%87%e4%bb%b6%e9%98%85%e8%af%bb%e9%93%be%e6%8e%a5%e7%94%a8%e4%ba%8e%e6%9f%a5%e7%9c%8b%e5%8e%9f%e6%96%87 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=aecdfbTab data-bs-toggle=tab data-bs-target=#aecdfb type=button role=tab aria-controls=aecdfb aria-selected=true>请求示例</a>
|
||||||
<a class=nav-link id=cfdbaeTab data-bs-toggle=tab data-bs-target=#cfdbae type=button role=tab aria-controls=cfdbae aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=edbcaf role=tabpanel aria-labelledby=nav-1><p>id 为文件的 id。</p><div class=prism-codeblock><pre id=3291e95 class=language-bash>
|
<a class=nav-link id=efcadbTab data-bs-toggle=tab data-bs-target=#efcadb type=button role=tab aria-controls=efcadb aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=aecdfb role=tabpanel aria-labelledby=nav-1><p>id 为文件的 id。</p><div class=prism-codeblock><pre id=3291e95 class=language-bash>
|
||||||
<code>curl --location --request GET '{{baseURL}}/v1/file/read?id=xx' \
|
<code>curl --location --request GET '{{baseURL}}/v1/file/read?id=xx' \
|
||||||
--header 'Authorization: Bearer {{authorization}}'</code>
|
--header 'Authorization: Bearer {{authorization}}'</code>
|
||||||
</pre></div></div><div class="tab-pane fade" id=cfdbae role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=9102b7d class=language-json>
|
</pre></div></div><div class="tab-pane fade" id=efcadb role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=9102b7d class=language-json>
|
||||||
<code>{
|
<code>{
|
||||||
"code": 200,
|
"code": 200,
|
||||||
"success": true,
|
"success": true,
|
||||||
@ -104,11 +104,11 @@ type FileListItem = {
|
|||||||
"url": "xxxx"
|
"url": "xxxx"
|
||||||
}
|
}
|
||||||
}</code>
|
}</code>
|
||||||
</pre></div><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"></div><div class=w-100><ul><li>url - 文件访问链接,拿到后会自动打开。</li></ul></div></div></div></div><h3 id=4-获取文件详细信息用于获取文件信息>4. 获取文件详细信息(用于获取文件信息) <a href=#4-%e8%8e%b7%e5%8f%96%e6%96%87%e4%bb%b6%e8%af%a6%e7%bb%86%e4%bf%a1%e6%81%af%e7%94%a8%e4%ba%8e%e8%8e%b7%e5%8f%96%e6%96%87%e4%bb%b6%e4%bf%a1%e6%81%af class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=ebcfdaTab data-bs-toggle=tab data-bs-target=#ebcfda type=button role=tab aria-controls=ebcfda aria-selected=true>请求示例</a>
|
</pre></div><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"></div><div class=w-100><ul><li>url - 文件访问链接,拿到后会自动打开。</li></ul></div></div></div></div><h3 id=4-获取文件详细信息用于获取文件信息>4. 获取文件详细信息(用于获取文件信息) <a href=#4-%e8%8e%b7%e5%8f%96%e6%96%87%e4%bb%b6%e8%af%a6%e7%bb%86%e4%bf%a1%e6%81%af%e7%94%a8%e4%ba%8e%e8%8e%b7%e5%8f%96%e6%96%87%e4%bb%b6%e4%bf%a1%e6%81%af class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=cbfdaeTab data-bs-toggle=tab data-bs-target=#cbfdae type=button role=tab aria-controls=cbfdae aria-selected=true>请求示例</a>
|
||||||
<a class=nav-link id=fdbaecTab data-bs-toggle=tab data-bs-target=#fdbaec type=button role=tab aria-controls=fdbaec aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=ebcfda role=tabpanel aria-labelledby=nav-1><p>id 为文件的 id。</p><div class=prism-codeblock><pre id=3570318 class=language-bash>
|
<a class=nav-link id=fcdeabTab data-bs-toggle=tab data-bs-target=#fcdeab type=button role=tab aria-controls=fcdeab aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=cbfdae role=tabpanel aria-labelledby=nav-1><p>id 为文件的 id。</p><div class=prism-codeblock><pre id=3570318 class=language-bash>
|
||||||
<code>curl --location --request GET '{{baseURL}}/v1/file/detail?id=xx' \
|
<code>curl --location --request GET '{{baseURL}}/v1/file/detail?id=xx' \
|
||||||
--header 'Authorization: Bearer {{authorization}}'</code>
|
--header 'Authorization: Bearer {{authorization}}'</code>
|
||||||
</pre></div></div><div class="tab-pane fade" id=fdbaec role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=fa15e80 class=language-json>
|
</pre></div></div><div class="tab-pane fade" id=fcdeab role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=fa15e80 class=language-json>
|
||||||
<code>{
|
<code>{
|
||||||
"code": 200,
|
"code": 200,
|
||||||
"success": true,
|
"success": true,
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user