menu Chancel's blog
rss_feed
Chancel's blog
有善始者实繁,能克终者盖寡。

Apis

作者:Chancel Yang, 创建:2023-07-18, 字数:3075, 已阅:860, 最后更新:2024-07-08

1. 服务说明

以下会涉及到一些博客的 API 接口,仅提供开发和测试调用

出于博客版本更新可能导致的服务下线,不建议将 API 接口用于生产环境

考虑到安全性问题,对于一些敏感的 API 调用(例如涉及资源消耗的操作),会限制单位时间内的请求次数

API 接口会不定期进行更新,如果发现 API 有请求方面的问题欢迎随时留言告知

2. 服务分享

2.1. http 加速服务

服务: https://agent.chancel.me

此服务用于解决国内网络无法顺利连接到 github.com/www.debian.org 等网络状况不佳的网站

目前服务支持加速域名(包含其所有子域名):

  • debian.org
  • github.com
  • githubusercontent.com
  • python.org
  • gravatar.com

使用方法:将原域名作为路径,域名替换为 agent.chancel.me 进行操作

例如下载 github 上的 CMakeLists.txt 文件:

例如代理访问国内访问不畅通的 gravatar.com 头像服务

2.2. syncthing 中继服务

服务地址: relay://www.chancel.me:2206/?id=ZY73TOU-DLR4KHS-TMQTTTP-QG22MQX-XY4PBUO-GX3OLFD-DGQT6RY-HRV37A5

syncthing 是一款非常好用的 p2p 同步软件,但国内复杂的 NAT 网络偶尔导致同步文件失败或者非常慢,借助上面的中继服务器可以实现稳定的文件同步

使用方法

  1. 打开 syncthing 控制台,选 settings-connections
  2. 在 sync protcol listen address 中填入上面的服务地址

如图

20230105.102147.png

2.3. PlantUML 插件服务(Joplin)

地址:https://plantuml.chancel.me

使用方法

  1. 打开 Joplin 菜单栏-Tools-Options-Plugins 并安装 PlantUMl 插件
  2. 安装完成后,在 Joplin 菜单栏-Tools-Options-Plugins 子类中选择 PlantUML 插件,选择私有服务器,并填入上述服务地址,如图

20221007.013159.png

搭建文档参考: plantuml/plantuml-server - github.com

3. API 列表

3.1. Json数据存取

地址:https://api.chancel.me/rest/api/v1/anyjson

接口说明:POST 请求存储任意 Json 数据,GET 请求返回 对应 Json 数据

请求方法:GET/POST

请求参数

参数名称 参数类型 是否必须 说明
id string 存取Json数据的key

CURL的示例如下

先 POST 请求存储一段 Json 数据

Bash
$ curl -X POST https://api.chancel.me/rest/api/v1/anyjson?id=hello -H "Content-Type: application/json" -d '{"lihua": "hi!"}'          

# 返回状态 1 ,表示存储成功
{"status":1,"msg":"Data stored successfully","data":null,"version":"V1.0.0"}

使用 GET 取回刚才存储的 Json 数据

Bash
$ curl -X GET https://api.chancel.me/rest/api/v1/anyjson?id=hello -H "Content-Type: application/json"                                 
{"lihua":"hi!"}

3.2. 随机图片获取

地址:https://api.chancel.me/rest/api/v1/image

接口说明:用于获取随机 webp 图片,尺寸是 1920x1080,支持自定义宽度或者高度,图片来源网络不做内容保证

请求方法:GET

请求参数

参数名称 参数类型 是否必须 说明
id string 指定 ID 可每次获取相同图片
height int 指定高度(宽度根据图片自适应)
width int 指定宽度(高度根据图片自适应)

示例:可直接访问 https://api.chancel.me/rest/api/v1/image

3.3. IP 查询

地址:https://api.chancel.me/rest/api/v1/ip

请求方法:GET

接口说明:返回调用者的 IP

CURL的示例如下

Bash
$ curl https://api.chancel.me/rest/api/v1/ip                                                                                            
{"status":1,"msg":"Query success","data":{"ip":"14.145.29.214"},"version":"V1.0.0"}

[[replyMessage== null?"发表评论":"发表评论 @ " + replyMessage.m_author]]

account_circle
email
web_asset
textsms

评论列表([[messageResponse.total]])

还没有可以显示的留言...
gravatar
[[messageItem.m_author]] [[messageItem.m_author]]
[[messageItem.create_time]]
[[getEnviron(messageItem.m_environ)]]
[[subMessage.m_author]] [[subMessage.m_author]] @ [[subMessage.parent_message.m_author]] [[subMessage.parent_message.m_author]]
[[subMessage.create_time]]
[[getEnviron(messageItem.m_environ)]]