Obsidian中自动上传兰空图床

Obsidian中自动上传兰空图床

前言

本文默认读者已经搭建好了一个兰空图床服务
本文中的需要修改的参数将表示为 {{ arg }},修改时请去除双括号

在之前编写笔记的时候,需要自己手动上传图片到图床然后获取图片的url插入到笔记中。这种方式比较麻烦,因此笔者尝试寻找自动上传的方法,最终采用的是Obsidian中的一个插件Image Uploader

安装插件

使用插件的第一步就是安装插件,首先在社区市场中寻找Image Uploader插件
为什么不显示

填充请求信息

安装好插件后启用插件,然后进入选项

在该界面有四个部分需要输入,分别为接口链接请求头请求体response中的图片链接,这些信息的具体参数需要在图床中查找,所以需要登录图床,然后进入接口界面

接口链接

接口链接部分填写接口URL,然后加上upload

比如这里的URL如果是http://www.example.com/api/v1, 那接口链接应该填写http://www.example.com/api/v1/upload

请求头

请求头中的验证部分需要自己使用token验证,否则图片将为游客上传

{
  "Authorization": "{{ 你的token }}",
  "Accept": "application/json",
  "Content-Type": "multipart/form-data"
}

这里的token获取需要我们自己去post一个数据到接口上

我们可以自己使用任何能发送post请求的方式来获取token。
这里介绍两种方式,第一种是使用postman或者apifox等接口测试工具,第二种是使用编程来发送请求,本文简单介绍使用python的requests库安装

Python 3.12.4 (tags/v3.12.4:8e8a4ba, Jun  6 2024, 19:30:16) [MSC v.1940 64 bit (AMD64)] on win32
>>> import requests
>>> x = requests.post("{{ 你的兰空图床接口 }}/tokens",{"email":"{{ 你的email }}","password":"{{ 你的密码 }}"})
>>> x
<Response [200]>
>>> x.text
'{"status":true,"message":"success","data":{"token":"{{你的token}}"}}'
>>>

将获取到的token替换掉请求头中的token即可

请求体

{
  "file": "$FILE"
}

图片链接

data.links.url

结语

使用win+shift+s即可截图,截图后在obsidian中ctrl+v即可自动上传图片

posted @ 2024-07-30 20:17  黑鹿kuka  阅读(94)  评论(0编辑  收藏  举报