ToB企服应用市场:ToB评测及商务社交产业平台
标题:
Lskypro2+upgit+typroa实现图片上传
[打印本页]
作者:
王海鱼
时间:
2025-1-10 01:23
标题:
Lskypro2+upgit+typroa实现图片上传
本片是对上一篇(Win10+PHP8+Nginx+LskyPro+SQLite3搭建本地图床_win10 php nginx-CSDN博客)的扩展。
在之前搭建本地图床的时候使用的是PicGo实现图片上传至LskyPro2,但是后来发现PicGo在在安装插件的时候比较贫苦,而且经常出现上传失败的情况,后来经过搜索,发现一个更加轻量级的上传工具Upgit(https://github.com/pluveto/upgit),该工具可以支持我们常见的文件存储比如gitbub、gitee、七牛云等。但是这个工具目前没有可视化页面,但是考虑到背面要整合到typroa,以是没有可视化页面也就无所谓了。
1、下载软件
软件下载地点:Releases · pluveto/upgit · GitHub
一般选择最新的版本即可,我这里选择的是最新版upgit_win_amdd64.exe
软件下载完成后直接放到指定目次,比如"D:\MySoftware\upgit"下,并将软件名改为upgit.exe
然后在手动创建目次extensions,并在该目次下创建文件lskypro.jsonc,文件内容如下:
{
"meta": {
"id": "lskypro2",
"name": "LskyPro2 Uploader",
"type": "simple-http-uploader",
"version": "2.0.0",
"repository": ""
},
"http": {
"request": {
"url": "$(ext_config.host)/api/v1/upload",
"method": "
OST",
"headers": {
"Content-Type": "multipart/form-data",
"Authorization": "$(ext_config.token)",
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.80 Safari/537.36"
},
"body": {
"file": {
"type": "file",
"value": "$(task.local_path)"
},
"token": {
"type": "string",
"value": "$(ext_config.token)"
}
}
}
},
"upload": {
"rawUrl": {
"from": "json_response",
"path": "data.links.url"
}
}
}
然后在upgit.exe目次下创建文件config.toml
1、设置default_uploader="lskypro2"
2、设置uploaders.lskypro
# =============================================================================
# UPGIT 配置
# =============================================================================
# 默认上传器
default_uploader = "lskypro2"
# 上传文件名的格式模板(仅特定上传器适配)
# / 目录分隔符, 作用: 是区分目录
# {year} 年份, 例如: 2022
# {month} 月份, 例如: 02
# {day} 天, 例如: 01
# {unix_ts} 时间戳, 例如: 1643617626
# {fname} 原始文件名,如 logo (不含后缀名)
# {fname_hash} {fname}的 MD5 散列值
# {ext} 文件后缀名, 例如.png
# 下面的例子生成的文件名预览: 2022/01/upgit_20220131_1643617626.png
# 如果目录不存在将会被程序自动创建
rename = "{year}/{month}/upgit_{year}{month}{day}_{unix_ts}{ext}"
# -----------------------------------------------------------------------------
# 自定义输出格式
# -----------------------------------------------------------------------------
# {url} 图片文件的网络URL地址
[output_formats]
"bbcode" = "[img]{url}[/img]"
"html" = '<img src="{url}" />'
"markdown-simple" = ""
# -----------------------------------------------------------------------------
# 直链替换规则 RawUrl -[replace]-> Url
# -----------------------------------------------------------------------------
# 如果您的网络访问Github异常或者缓慢,您可以尝试下面的配置以开启CDN加速
# [replacements]
# "raw.githubusercontent.com" = "cdn.jsdelivr.net/gh"
# "/master" = "@master"
# =============================================================================
# 以下为各个上传器的配置示例. 用不到的留空即可
# =============================================================================
# Github 上传器
[uploaders.github]
# 保存文件的分支,例如 master 或 main
branch = "master"
# 您的拥有"repo"权限的 Github 令牌
# 获取Github Token连接: https://github.com/settings/tokens
pat = "ghp_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
# 您的公共Github存储库的名称
# 注意: 为了让您和他人可以访问到图片资源, 您的Github仓库一定要是公开的,
# 在私有仓库中Github会拦截未授权的请求,你将会得到一个404.
repo = "repo-name"
# 您的 Gtihub 用户名
username = "username"
# SMMS 上传器
[uploaders.smms]
# Get token from https://sm.ms/home/apitoken
token = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
# Imgur 上传器
[uploaders.imgur]
# Get token from https://api.imgur.com/oauth2/addclient
# See your apps in https://imgur.com/account/settings/apps
client_id = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
# Chevereto Uploader
[uploaders.chevereto]
upload_url = "https://chevereto.com/api/v1/upload"
key = "c8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8"
# 腾讯云 COS
[uploaders.qcloudcos]
host = "xxx.cos.ap-chengdu.myqcloud.com"
secret_id = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
secret_key= "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
# 七牛云存储
[uploaders.qiniu]
# Generate Token: http://jsfiddle.net/gh/get/extjs/4.2/icattlecoder/jsfiddle/tree/master/uptoken
token = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx:xxxxxxxxxxxxxxxxxxxxxxxxxxx:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=="
prefix = "https://cdn.mydomain.com/"
# Gitee
[uploaders.gitee]
username = "username"
repo = "repo-name"
# https://gitee.com/profile/personal_access_tokens/new
access_token = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
[uploaders.cloudinary]
cloud_name = "my_cloud"
upload_preset = "preset_name"
[uploaders.easyimage]
request_url = "https://img.545141.com/api/index.php"
token = "1c17b11693cb5ec63859b0ccccccccccc"
#
[uploaders.lskypro2]
host = "http://localhost:8891"
token = "Bearer token"
[uploaders.s3]
region = "us-west-2"
bucket_name = "my-bucket"
access_key = "your-access-key"
secret_key = "your-secret-key"
endpoint = "https://s3.us-west-2.amazonaws.com"
url_format = "{endpoint}/{bucket}/{path}"
复制代码
然后将upgit添加到path路径
测试
2、整合typroa
在typroa的设置-图像中设置upgit
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/)
Powered by Discuz! X3.4