Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian

EUpload

appleecappleec151 downloads

Support uploading files to different platforms.

Add to Obsidian
  • Overview
  • Scorecard
  • Updates2

这是 Obsidian 插件,专用于上传文件到存储仓库。目前支持 Lskypro(兰空图床),后续有需求会引入其它存储方式,如:Github/Gitee等等。

功能特性

  • 支持多平台配置
    • Lskypro(兰空图床)
    • Halo(blog)
    • Github
  • 支持右键菜单点击上传

快速安装

通过 Obsidian 社区插件中搜索并安装

尝试在 Obsidian 社区插件中搜索 EUpload,若找到该插件,按照提示直接安装即可。

通过源码仓库或发布的文件下载安装

  • 从 Release 或源码中下载文件,包含:main.js,manifest.json,styles.css
  • 复制或移动 main.js, styles.css, manifest.json 到 [VaultFolder]/.obsidian/plugins/[your-plugin-id]/
  • 找到该插件进行相应配置即可(重启 Obsidian )

注意: [VaultFolder] 是根目录、[your-plugin-id] 是插件 id(manifest.json => id)

通过第三方下载并安装

可尝试使用第三方插件进行安装,如:BRAT

操作指南

下面配置包含具体实例,请按需替换自己的内容。

Lskypro 配置

  • API 请求地址 - 上传文件 API 地址,注意末尾不添加 /
# 注意,URL 地址不添加 `/`
https://xxx.xxx.xxx/api/v1/upload
  • API 请求头 - POST Header,JSON 格式
{
    "Authorization": "Bearer Jq7mTKdjN7BxMjLoG8Jj8eaGGV2GuurwumOGFCBm",
    "Accept": "application/json",
    "Content-Type": "multipart/form-data"
}

Authorization 必须,认证令牌,注意格式或空格,具体字段按需变更
Content-Type - 可选,类型

  • API 请求体 - POST Body,JSON 格式
{
    "file": "$FILE",
    "strategy_id": 2
}

file - 必须,二进制文件,$FILE 为内置字段,不可变更
strategy_id - 可选,此处表示存储仓库ID,自行查阅 API

  • 图片 URL 路径 - 返回数据(Response)中图片 URL 字段路径,以 JSON 对象为例,如:data.pathname
data.pathname
  • 图片 URL 前缀 - 可选,当填入时,此值将插入到图片 URL 路径之前,即:URL = 前缀 + 图片 URL 路径
# 一般 API 只返回图片路径或者存在多个域名情况使用
# 注意,URL 地址添加 `/`
https://xxx.xxx.xxx/upload/eblog/

Halo 配置

  • API 请求地址 - 上传文件 API 地址,注意末尾不添加 /
# 注意,URL 地址不添加 `/`
https://xxx.xxx,xxx/apis/api.console.halo.run/v1alpha1/attachments/upload
  • API 请求头 - POST Header,JSON 格式
{
    "Authorization": "Bearer pat_eyJraWQiOiI1SG9MUWVvUW10bV9zd2JISFRSODFEd1dUWVNyUUlyc0N3NjE2R1dQTXpnIiwiYWxnIjoiUlMyNTYifQ.eyJpc3MiOiJodHRwczovL2Jsb2cuZWxpbnp5LmNvbS8iLCJzdWIiOiJhZG1pbiIsImlhdCI6MTcxMTk1NjY5MiwianRpIjoiN2E5NDY3NjEtY2QzYi1kODc4LTJkOGMtZWQxNmUwZDk4NzFjIiwicGF0X25hbWUiOiJwYXQtYWRtaW4tbkdnZG0ifQ.cl7n0f9SqP5qwYUW2ZM6DL6Ex6Xh9GvxL_hwEDJuUn8tlyuzOhcjUqkGSCO1D8E0lqym7RtV7xDQzSLkQybKbSwRqeMEDbLbdLMDpzD2Vu1aptz5m0ifsm9pvpm2Wqnn_px68arhqHqmMwP-8N9F1m-fMu1ovBuXI2gzHA56Ne1yWsSObeasxqNP1CNsez_abdv0fPKxbBsV_2JrQeHYc0y90M8V0WZ9d3_zdrgOMg6Hm481VprrHUwB9nxrsVsCxd_ROwf93ZhGo_VPV5YG8_Pz4CwRGzkIABVHO1leUXyMD24nOpG9csGo-mauuik7oi1h6eLUMi2902qKFUctwRsF4lKQSP6h2Li9UUt0FYQp78uaTDbke3eAxLq1nqWfOn3Lplpe1tz8MPXtZGclx2xz4zkQWs5TdOU4cuukMIJoXfc1VCbAR9AuaG1BVMZYnL-scgg9I9GNHjtcfgFMskUaEKQlyYTNiIweaqQHMlBHvdxJjCMko9jdB2qnMNw9cs2QfMreK278A6ucHMOB9WGVh0thpor1gk2MvAcV3k-ai21BKUdOLooxftdXbI7V9xif_fLEZwFvtf2RtRqChJpXLyGS2-xoOwg00kz0khckv43vntSCPZ8pqHnTAWsy_ssf80WOajs2guY25l04PXAshEGndvziB0Aod3AoXdY"
}

Authorization 必须,认证令牌,注意格式或空格,具体字段按需变更

  • API 请求体 - POST Body,JSON 格式
{
    "file": "$FILE",
    "policyName": "attachment-policy-gUpSV",
    "groupName": "attachment-group-JWlvm"
}

file - 必须,二进制文件,$FILE 为内置字段,不可变更
policyName - 可选,此处表示存储仓库,自行查阅 API groupName - 可选,此处表示分组名称,自行查阅 API

  • 图片 URL 路径 - 返回数据(Response)中图片 URL 字段路径,以 JSON 对象为例,如:data.pathname
["metadata", "annotations", "storage.halo.run/uri"]
  • 图片 URL 前缀 - 可选,当填入时,此值将插入到图片 URL 路径之前,即:URL = 前缀 + 图片 URL 路径
# 一般 API 只返回图片路径或者存在多个域名情况使用
# 注意,URL 地址添加 `/`
https://xxx.xxx.xxx/

Github 配置

https://docs.github.com/zh/rest/repos/contents?apiVersion=2022-11-28

  • API 请求地址 - 上传文件 API 地址,注意末尾不添加 /
# 注意,URL 地址不添加 `/`
https://api.github.com
  • API 请求头 - POST Header,JSON 格式
{
    "Accept": "application/vnd.github+json",
    "Authorization": "token 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"
}

Authorization 必须,认证令牌,注意格式或空格,具体字段按需变更

  • API 请求体 - POST Body,JSON 格式
{
    "owner": "Appleec",
    "repo": "e-test",
    "branch": "master",
    "path": "img/$PATH",
    "message": "From uploader Github",
    "content": "$CONTENT"
}

content - 必须,表示 base64 编码图片,$CONTENT 为内置字段,不可变更
owner - 必须,表示用户,自行查阅 API repo - 必须,表示仓库名,自行查阅 API path - 必须,表示文件路径,自行查阅 API branch - 可选,表示分支,自行查阅 API message - 必须,表示消息内容,自行查阅 API

  • 图片 URL 路径 - 返回数据(Response)中图片 URL 字段路径,以 JSON 对象为例,如:data.pathname
["content", "download_url"]
  • 图片 URL 前缀 - 可选,当填入时,此值将插入到图片 URL 路径之前,即:URL = 前缀 + 图片 URL 路径
# 一般 API 只返回图片路径或者存在多个域名情况使用
# 注意,URL 地址添加 `/`
https://xxx.xxx.xxx/

开发

该项目使用 TypeScript 提供类型检查和文档。 该存储库依赖于 TypeScript 定义格式的最新插件 API (obsidian.d.ts),其中包含描述其功能的 TSDoc 注释。

启动项目

git clone https://github.com/Appleec/e-obsidian-upload-plugin.git obsidian-upload-plugin

cd obsidian-upload-plugin

npm i

npm run dev

发布项目

  • 更新 manifest.json 版本,如:1.0.1
  • 更新 versions.json 中的 version 和 minAppVersion 版本
  • 打一个版本标签并在代码仓库中创建一个发布任务,如:GitHub Release
  • 将打包好的 manifest.json, main.js, styles.css 上传
  • 查看是否发布成功

API 文档

查看 https://github.com/obsidianmd/obsidian-api

下一步

  • 添加选中图片上传命令行
  • 添加所有图片上传命令行
  • 支持 GitHub 配置上传

参考文档

  • obsidian-image-upload-toolkit
  • obsidian-image-uploader
  • obsidian-image-auto-upload-plugin
  • obsidian-image-uploader
  • obsidian-wordpress
  • obsidian-emo-uploader
69%
HealthGood
ReviewRisks
About
Upload files from Obsidian to remote storage repositories like Lskypro, Halo, or GitHub. Use a right-click context menu to send files and manage multiple platform targets with per-service API settings.
AttachmentsFilesIntegrations
Details
Current version
1.0.2
Last updated
Last year
Created
2 years ago
Updates
2 releases
Downloads
151
Compatible with
Obsidian 0.15.0+
Platforms
Desktop only
License
MIT
Report bugRequest featureReport plugin
Author
appleecappleec
github.com/Appleec
GitHubappleec
  1. Community
  2. Plugins
  3. Attachments
  4. EUpload

Related plugins

Local REST API & MCP Server

Unlock your automation needs by interacting with your notes over a secure REST API.

Image auto upload

Upload images from your clipboard by PicGo.

WebDAV Sync

General-purpose & bidirectional WebDAV syncing for your vault. Designed for stability and robust file handling without vendor lock-in.

Google Drive Sync

Syncs a vault into Google Drive for cross-platform use (works for iOS).

Notebook Navigator

A better file browser and calendar inspired by Apple Notes, Bear, Evernote and Day One.

QuickAdd

Quickly add new notes or content to your vault.

Recent Files

Display a list of recently opened files.

Omnisearch

Intelligent search for your notes, PDFs, and OCR for images.

Claudian

Embeds Claude Code/Codex as an AI collaborator in your vault. Your vault becomes agent's working directory, giving it full agentic capabilities: file read/write, search, bash commands, and multi-step workflows.

BRAT

Easily install a beta version of a plugin for testing.