冰焰碧水 發表於 2025-7-19 15:53:00

n8n教程分享,从Github读取.md文档内容

<blockquote>
<p>从上一篇我们了解到了如何安装 n8n</p>
<p>那么这节课我们尝试从github的个人仓库获取某个文件的内容</p>
</blockquote>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=OGVhMmRkZGNlY2RlOGY3ZTc5NWViZTE5MzY1ZGFkZjZfRGxDNFFObUgzbmtqNEI2ZVZlN3NYWkd6UFBqSlVKRTlfVG9rZW46WTJGc2IyUnF1bzVEd1N4aktxY2xiVk1TZ3VoXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p>目标如下</p>
<p>content/business/1.how-to-use-money.mdx</p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=MTMzMzY1ZGM4NDM3MzY4YzY4YjA0NzUwYjYyYTQzYzNfRWMyT3RBdkdYU293SWh2VUF5bXpUZDAyV0l0dFRnYVlfVG9rZW46TGNmVGIyZXlwbzR2MEZ4MXByV2xKd1VBZ2FiXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<h2 id="总流程图">总流程图</h2>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=MjVjZGQyYWE5MzkwMGUwNDNiMzM3YjIzMGI2ZGRlZDBfOUlPSXRtSWxVcE82MkUwcU1mMVQ4TTIwQXIwQmtlTXJfVG9rZW46RzhCMWJXYmY5b2pCaEV4MHBIZGxCaG93ZzRkXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<h2 id="流程详解">流程详解</h2>
<h4 id="第1步申请-github-personal-access-token-classic"><strong>第1步:申请 GitHub Personal Access Token (Classic)</strong></h4>
<p>在gitrhub 个人 设置选项 申请 GitHub Personal Access Token (Classic)</p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=NGFiOTk5YWUxYzY3ZTUyZWViYTJmYTY0MDdlMmFhY2Rfa0NQSUlhZFNkOGhiVm1hOWpXdkxPaEE2WDNVa0F0Q1RfVG9rZW46V0Z0OGJiZlozbzFNZDJ4bXFuSmxXdXQzZ25kXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=NzBkNTBlOTcyZjMxNzJkM2RjMTc4ZTkxMmFiZmEyZTFfb2thMHU4eHpYTEFvQUFIT20wVDNRVlNMVFdJOUFNMjNfVG9rZW46WGFrN2JsaGFLb3VDNEF4SkZ4R2xGZXNQZ05iXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p>在第二步之前我们点击➕,会进行选择github节点,我们先获取文件列表所以选择 List files</p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=OTRjMjBiOTQ5YzVjZTU1MzdjYmM3ZjYzYjFjMDBkZWRfTWFqQ3NwZ1RBYzY0dGpBYlNScThnZFY5a3IzSzZBY2xfVG9rZW46WWFWcGJVcmRYb3JvSm94Unh5WWx4aVFSZ1czXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=OGY1OWMwN2Q2OGZiMDNiY2EyMzNkNzIyM2RjODk1NGNfM2QzQTJWZ1RPN1NuRWhYdTRGSUtMN1htb3lHSE9rNjJfVG9rZW46UnRzSmJXcllQb0hHSkt4Y1hScWx0dURWZ21mXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=YzE4MWVjMGNiZWEwNDg2YjJjMzc4OTdjNzBkMDc0NDBfelVZaEhNZ1M4UktXdk9xWjZQaFQyZGU3cGhzckF4dnJfVG9rZW46QlQ3NmI1OTZCb0JNTTJ4cjhMOGxKUzBkZzdmXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<h4 id="第2步获取content目录列表-第一个-github-节点"><strong>第2步:获取content目录列表 (第一个 GitHub 节点)</strong></h4>
<ul>
<li>
<p><strong>节点类型</strong>:GitHub</p>
</li>
<li>
<p><strong>作用</strong>:流程启动后,首先会执行这个节点。它的任务是连接到您配置好的某个 GitHub 仓库,并获取根目录下名为 <code>content</code> 的文件夹里面所有文件和子文件夹的列表。</p>
</li>
<li>
<p><strong>输出</strong>:一个包含多个项目的列表,每个项目都代表 <code>content</code> 目录下的一个文件或文件夹。</p>
</li>
</ul>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=NjJlOTJmYjM3YjI0MTY5YTFkMzkzNjlmMjFkODliYjNfaDBHY0xuUU9jak8ySFJMWE83S2JEVmowNHFRYnVRU0FfVG9rZW46RDF2MmI3Q2RBb0YxZ0F4ZXg4Qmw5Wlo5Z2RjXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p><strong>Credential to connect with (连接凭证):</strong> <code>GitHub account</code> 把我们刚申请的填入进去</p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=M2I0ODNjZjA2MjIxN2FjMzE3OTliNGFhNDA2YTExZjNfVTdxbUkxVUZETmltbnVGRHFFWjFkYUFhN0hpZURWb3RfVG9rZW46Q1lZSGJ0a2ZQb3l6cTV4QXFRUWwxbG9PZ0FiXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<ul>
<li>
<p><strong>User 为你的github用户</strong></p>
</li>
<li>
<p><strong>Access Token填入申请的key</strong></p>
</li>
<li>
<p><strong>Resource (资源):</strong> <code>File</code> - 操作的 GitHub 资源类型是“文件”。</p>
</li>
<li>
<p><strong>Operation (操作):</strong> <code>List</code> - 资源执行的操作是“列出”。结合起来就是“列出文件”。</p>
</li>
<li>
<p><strong>Operation (操作)和Resource (资源) 有其他的选项可以尝试结合</strong></p>
</li>
<li>
<p><strong>Repository Owner (仓库所有者):</strong> <code>Shiinama</code> - 指定了目标仓库是属于 <code>Shiinama</code> 这个用户或组织的。</p>
</li>
<li>
<p><strong>Repository Name (仓库名称):</strong> <code>blog</code> - 指定了仓库的名字是 <code>blog</code>。</p>
</li>
<li>
<p><strong>Path (路径):</strong> <code>content</code> - 指定了要列出内容的具体路径是仓库根目录下的 <code>content</code> 文件夹。</p>
</li>
</ul>
<p>这个仓库的名称结合起来就是我的项目地址 https://github.com/Shiinama/blog</p>
<p>我们来尝试执行一下就会看到</p>
<p>已经成功列出了仓库的文件目录</p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=NzlkZjY3OGQ3ZmY1Zjc2M2E0YTBiYzAyYjViNjI1OTdfUHVRZFZXckJ0eWdnclA4ZWh1Tmphcm9lVFlYYkx4T2dfVG9rZW46RG05T2JxaGpwb2VwNDl4cUg1Y2xHYkxOZ1NmXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<h4 id="第3步获取子目录列表文件-第二个-github-节点"><strong>第3步:获取子目录列表文件 (第二个 GitHub 节点)</strong></h4>
<ul>
<li>
<p><strong>节点类型</strong>:GitHub</p>
</li>
<li>
<p><strong>作用</strong>:这个节点接收上一步传来的列表。它很可能会遍历这个列表,如果发现某个项目是文件夹,它就会进入这个<strong>子文件夹</strong>,并获取该子文件夹内部所有文件的列表。</p>
</li>
<li>
<p><strong>输出</strong>:一个更详细的文件列表,包含了各个子目录下的文件信息(提到的 <code>d1-and-drizzle.mdx</code> 文件)。</p>
</li>
</ul>
<p><strong>同理在右上角添加github的 list files</strong></p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=OGQxMjkzNmYwZjAzNWMzNWQxM2E5YWQzM2I2NmI3MDZfcHBxVGxJaG9oak51alY2Q3pRRGFTUmVVa3BDTnR2anZfVG9rZW46RkFNS2J6ajRFb2ZUQ2R4M1BQZGxwR25vZ3NmXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=MmE1ODk1NWYxNDU5MTVkNWFjMmE3MjFiYWJkNDNjZTZfQ3hkVVo4V2lSUXF3OXF2Z2gyZW4xT1dBME45Sm1CMlFfVG9rZW46SVQ2QmI2WDR2b09mS3p4TUlaN2x4dDhLZ2llXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=ZDJmZmI0ZjY2NjY0ZjkzN2QzMjc3OWJmMzYwODVhZDdfZjNEbjNjdVRkUVkwYThMWFYwN2dNQmo0SlJ0ZzZNZ1VfVG9rZW46VlVkd2J1cUJ3b25OeE54OUNRWWxhQWhRZ2FoXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=YjJlNGVlMTVmMTIwODQzN2VhMjEzMTNhNjU3OWFjODVfa3I3NkhYc3c0RkNINnFFTHNRZXZxNWVmNW9RTlJJeDlfVG9rZW46S0lXQmJXNk9yb2Z4MVV4UDRjMmxYTjZIZ2loXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p><strong>左侧的</strong>是我们上一个获取content目录列表请求到的结果</p>
<p><strong>中间的参数填写完</strong>, 点击 Execute Step 会执行显示结果在右侧</p>
<p>点击左侧path 选择复制</p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=ZTEyNzk5MjMwYjBkNjQ4ZDNkY2JmNDE0YjA5NDU5Yjdfbkk5QWNhVkVscGs2SzJwY0Q5OEpFeG83QXdQakNQYXlfVG9rZW46V1V0SGJxYVFrb0h2N3d4bFZPVGxzcjQ4Z2xnXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=YzJmMWZhMzcyM2E3OWZhMTdiNDM3MzE4ODllZGQ5MWRfbm9GWGtHVXE3REk3eWQ2dkR1YlZTY1NtTzJFNENsRnVfVG9rZW46SlE3QWJIaXFkb2ZEcER4dGJ3MGxGaDVSZ3VnXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p>点击Execute step之后 我们可以在右侧得到显示的结果</p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=ODM3Y2U0N2M3ZTE2ZDdiNWQ0NGQ2OGRmOTUyMzYwNTBfZ0RSM0xqVnlySk5NRkE4VEx5OGh3M1BQWE1XMm1TMndfVG9rZW46VW9DZmJaTlZObzc0U2F4cHNuUGw0VDQ3Z1JnXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p>这一步之后,我们得到的就是目录下所有mdx文件格式的文章了之后我们需要进行IF过滤空值</p>
<p><strong>Path 为我们需要得到的内容, 对其进行IF判断 确保path的参数为 .mdx结尾 判空</strong></p>
<h4 id="第4步if-条件判断-if"><strong>第4步:IF 条件判断 (If)</strong></h4>
<ul>
<li>
<p><strong>节点类型</strong>:逻辑判断 (Logic)</p>
</li>
<li>
<p><strong>作用</strong>:这是一个过滤器。它会检查从上一步获取到的每一个文件,并根据您设定的条件进行判断。条件是“文件名是否以 <code>.mdx</code> 结尾?”或者“文件类型是否是 <code>file</code>?”。</p>
</li>
<li>
<p><strong>分支</strong>:</p>
<ul>
<li>
<p><strong>true (上)</strong>:如果文件<strong>满足</strong>条件,就会从 <code>true</code> 路径输出。从图上看,目前 <code>true</code> 路径没有连接任何节点。</p>
</li>
<li>
<p><strong>false (下)</strong>:如果文件<strong>不满足</strong>条件,就会从 <code>false</code> 路径输出。在您的流程中,数据流从 <code>false</code> 路径继续向下走。</p>
</li>
</ul>
</li>
</ul>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=YTM4MzkyYzExYWE0ZTAzNzg3Y2IwYjA1N2I1ZjAxZjFfQkJiYTV3SHhBQVluQXlra3VqcE1KUDU1YWxQY3o1UFBfVG9rZW46Qmh3dGJCaEZOb2NxWXl4MWZSNGxzYnlKZ29iXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=YzU1ZTkzMDY2YmMzMWEwMGQwMzBjOTllNTFhMmJiNmFfaXVrdUZvT1FjZjExTGhCNkpBTFk4ajY2N2tKQUJzVG5fVG9rZW46T2t6QWI3eXNObzNBU3V4OXZCbGxXeFIzZzNjXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=ZGQ3NzYxNzE0OWVhZmEwYjFiMmYyYWQzYjY2NTQ2ZjFfNFNVU1hTVEFiOGF0dExkYVZGRkdoSUhhazBPYWVMZ2dfVG9rZW46VUFwbmJVa0dwb2F6WHN4Q1NhWWwxZk54Z1VmXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p>IF操作作为获取.mdx 防止.mdx内容为空的一层</p>
<p>IF的True节点进行连接下一个Code1节点</p>
<h4 id="第5步code1-第一个代码节点"><strong>第5步:Code1 (第一个代码节点)</strong></h4>
<ul>
<li>
<p><strong>节点类型</strong>:Code</p>
</li>
<li>
<p><strong>作用</strong>:这个节点接收从 <strong>IF</strong> 节点的 <code>false</code> 路径传来的文件数据。<strong>处理和准备 URL</strong>。例如:</p>
<ul>
<li>
<p>从文件数据中提取 <code>url</code> 或 <code>_links.self</code> 字段。</p>
</li>
<li>
<p>使用代码去掉 URL 中多余的 <code>?ref=main</code> 部分,生成一个干净的、可用于请求原始文件内容的 URL。</p>
</li>
</ul>
</li>
</ul>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=NDhmMDU3NTc3YThjZjE1MjgwMzA2NWU1YWE3YjlkZDVfc3M1QVVTcm1vOUhUek93TEVJOFdHbGtNTmgzOWRLeUVfVG9rZW46SU1yWmJia1VWb2tpZVV4RllPNmw5Qzh2ZzdkXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=ZmZhOTU2NTIwZGZlNjJiNzNkZWJmYmM0MDI1MDg0NWFfaDVaRFNKUk5ZNlBqUVVuRVJaRXM2MnJPTUNBbkUwNTlfVG9rZW46SmphemJUbUM5b2g2djl4ZnZ3cmxySktRZ1hlXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=YWFiNjU5NDA1OTRiZGMyZWYxZGUyZWYwNzYwYjlmNTlfYndZUUJEUzNDVTdkTnlBWktoNTlNYWFvUmZvUm9PazFfVG9rZW46RnZ3c2JqY2prbzJycFJ4a0E3eWw5allwZ0liXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p>左侧是待处理,</p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=YTNlZGMwYmRlMWM3MWZiNjc2NGE0MzM2MmIzZjkwMjBfbjhCbkppeWRYdHJsc2g0aGZqQmxJZTY4TE44VUxhWGVfVG9rZW46TlN2WWJ5YW5rbzIxSEt4dkRNSWw2akFvZzNlXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p>右侧是处理好的</p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=MmIyODUzZjQ5ZjM5YjY2NjBkZTBkMDFmMDkxNDkwMTlfMlFld0FLdFJaUnZlcUdneEl3SDIyTWlTT3ptdnA3MXFfVG9rZW46SFlyMmI1aGNJb1NJTHZ4VTVIdGw0ZmVmZzRmXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p>代码如下</p>
<pre><code class="language-JavaScript">// n8n Code Node
for (const item of items) {

// --- 第1部分:处理顶层的 'url' 字段 (和之前一样) ---
const topLevelUrl = item.json.url;
if (typeof topLevelUrl === 'string' &amp;&amp; topLevelUrl.includes('?')) {
    // 创建一个新的 'cleanUrl' 字段
    item.json.cleanUrl = topLevelUrl.split('?');
} else {
    item.json.cleanUrl = topLevelUrl;
}


// --- 第2部分:【新增】处理嵌套的 '_links.self' 字段 ---
// 先安全地检查 _links 对象和 _links.self 字段是否存在
if (item.json._links &amp;&amp; typeof item.json._links.self === 'string') {
   
    const selfUrl = item.json._links.self;

    // 同样检查它是否包含 '?'
    if (selfUrl.includes('?')) {
      // 如果包含,就直接修改(覆盖)原始 `_links.self` 字段的值
      item.json._links.self = selfUrl.split('?');
    }
}

}

return items;
</code></pre>
<h4 id="第6步http-request-http请求节点"><strong>第6步:HTTP Request (HTTP请求节点)</strong></h4>
<ul>
<li>
<p><strong>节点类型</strong>:HTTP Request</p>
</li>
<li>
<p><strong>作用</strong>:此节点会接收 <strong>Code1</strong> 处理好的干净 URL,然后向这个 URL 发起一个 HTTP GET 请求。它的目的就是<strong>获取文章的真正内容</strong>。您可能在这里设置了 <code>Accept: application/vnd.github.raw</code> 的 Header,来直接获取 Markdown 的源文本。</p>
</li>
</ul>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=NTc1Mzk5NjA3MTc0Y2I1NDA1Njc2YTBiN2QwNDRlZjBfZDdWaWRMazFYRFBQTFJDNkxzV09IRnhoUkZ3RE1NQlNfVG9rZW46WHRuaGJveHV5b1J3MWV4UTY1dWxwTkRLZ21iXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=YzI1NGZkN2QxZjdlMzM4ZDQzYTA5N2I5N2Q0YzE0YWRfeGw0eVRJMURNT0ZXTWM3a1BKT1Z4RFF4alpyckhuRE1fVG9rZW46SllrNmJDOTNhb0JwcE14YlFMSmxSclZCZzFkXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p>URL里面填写下面的self</p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=MWQzNTI4ZDk0MzI0YjNlZmIxZmUwMzliZjdhM2FmYThfbGMyd0tGN1FvRkc5ZUxvS3FpbkhuTTVCdDVMTGV4dWVfVG9rZW46U3B6ZWJQRXRSbzZVdUt4TGVRQWxnYzRvZ000XzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=YjY3OWFjZDU1MWQ1YWJjZGM4MWZlN2Q5MjkzMWFhODlfeXF1MWZkcUVCb1FkSlJ5eEJLR0dDcDV1dXRFUkRqaGJfVG9rZW46V3E0aWJrV1E2b2diVmZ4SnBqTWxFMEozZ3VoXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p>我们需要添加请求头,让github了解到我们的<strong>请求的是私有仓库</strong>和<strong>响应格式</strong></p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=OTkxYmY3YzQ5YjdjMWVlMTMwOGVmZmNlODZkMzY5ZmVfUHVTN1VXNndlbEZETGE3T290TUxidktPaTlSeVNQdzNfVG9rZW46VFkxTWJGeXVzb0c4UzR4eVV0SGxkbWFFZ05oXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p>Value里面需要填写我们申请的Key</p>
<p>格式:</p>
<pre><code class="language-Bash">token key //记得中间有空格
</code></pre>
<p><strong><code>请求头名称 (Name):</code></strong> <code>Accept</code> 请求头</p>
<p><strong>内容 (<strong><strong><code>application/vnd.github.v3+json</code></strong></strong>) 分解:</strong></p>
<ul>
<li>
<p><code>application/vnd.github</code>:这是一个特定的媒体类型 (Media Type),表示这是针对 GitHub API 的请求。</p>
</li>
<li>
<p><code>v3</code>:这部分指定了你希望使用 <strong>REST API 的 V3 版本</strong>。,可以确保你的应用不会因为未来 GitHub API 的版本更新而意外中断。</p>
</li>
<li>
<p><code>+json</code>:这表示你希望服务器返回的数据是 <strong>JSON 格式</strong>。</p>
</li>
</ul>
<p><strong>请求头名称 (Name):</strong> <code>Accept</code></p>
<p><strong>请求头值 (Value):</strong> <code>application/vnd.github.raw</code></p>
<p>核心目的:直接获取文件的原始(Raw)内容。</p>
<p><strong>执行 Execute step 右侧可以读取到文件的内容了</strong></p>
<p><img src="https://jg3p0gz06cr.sg.larksuite.com/space/api/box/stream/download/asynccode/?code=MDcwNzU3ZDcwOGQzNTM0ZmRkYTlhYTVhNDAxNWRjNjdfSUN0MjVFQ3dNQkJ3MXNQMWNING5kSWhDOGtoUElEb0JfVG9rZW46Sm12amJIbVVYb1JmOUR4V2E0eGxEc1pTZ0VmXzE3NTI5MTE1MDY6MTc1MjkxNTEwNl9WNA"></p>
<p>原文用markdown写的,输出原格式内容了</p>
<p>关于我的一些介绍</p><br><br>
来源:https://www.cnblogs.com/xibaoyu/p/18992962
頁: [1]
查看完整版本: n8n教程分享,从Github读取.md文档内容