Linux 命令行 curl 用POST方法 调用图床系统 API 添加二进制文件
之前, 我们利用pastebin系统实现了用API添加文本文件.
如果我们想保存二进制文件, 要怎么办呢?
这里, 我们利用图床系统imghost.
实践
假设,
你要上传的文件名 abc.zip
你的短链系统 URL https://imghost.crazypeace.workers.dev/
你的短链系统的密码 imghostimghost
那么,
filename="abc.zip"base64_encoded=$(base64 "$filename")base64_encoded="data:$(file -i "$filename" | cut -d' ' -f2);base64,$base64_encoded"file_content_escaped=$(echo $base64_encoded | jq -s -R)cat <<EOF >json_data{"cmd": "add","key": "$filename","password": "imghostimghost","url": $file_content_escaped}EOFcurl -H "Content-Type: application/json" -X POST -d @json_data https://imghost.crazypeace.workers.dev/
上传以后, 你可以访问 https://imghost.crazypeace.workers.dev/abc.zip
========
思路
基材是上次的代码.
我们加入base64转换, 文件类型等代码.
主要的学习路径也是去问GPT.
拿我们已经实现的JS的代码问GPT怎么转换为shell脚本.
========
后记
你可以自己试下 file -i 是什么效果, cut -d' ' -f2 是什么效果.
评论
发表评论