能提供一下发送给picgo的上传接口吗,希望能用podman描述一下
Closed this issue · 9 comments
m986883511 commented
我想做个api服务部署到自己的服务器,这样和本地就不能跑picgo了
我参考https://picgo.github.io/PicGo-Doc/zh/guide/advance.html#http%E8%B0%83%E7%94%A8%E4%B8%8A%E4%BC%A0%E5%89%AA%E8%B4%B4%E6%9D%BF%E5%9B%BE%E7%89%87 用fastapi测试了一下接口,我通过picgo作者提供的接口,用poman工具测试我写的接口是能通过的。
但是在obsidian里面粘贴图片测试自己的api接口就报错了,是插件的upload接口不一样吗
这是我用flaskduan'di断点捕获的插件接口,看不出来长什么样子
我用以下代码测试,并没有发现发送给picgo-server的接口有body体,是不是流式传输图片的?
import json
from flask import Flask, request
app = Flask(__name__)
@app.route('/upload', methods=['POST', 'GET'])
def login():
get_data = request.get_data()
print(f"get_data={get_data}")
# get_json= request.get_json()
# print(f"get_json={get_json}")
print(f"headers={request.headers}")
ff = request.files.get("file")
print(ff)
stream = request._get_file_stream()
print(f"stream={stream}")
if get_data:
get_data = json.loads(get_data)
print(get_data)
data = {'success': True, 'result': 'http://xxx.png'}
return json.dumps(data, ensure_ascii=False)
if __name__ == '__main__':
app.run(debug=True, host='0.0.0.0', port=36677)
希望大佬赐教
其中get_data打出来是空指
renmu123 commented
picgo支持传递的是本地文件路径,不支持文件,我不清楚有没有插件做过这种功能
m986883511 commented
我也觉得应该是穿本地文件路劲,可以是在obsidian里面实测(就是截个图,直接在ob里面粘贴),然后用接口接收,发现接口的数据没有body体啊。
m986883511 commented
能教一下你的插件代码里面大概是哪里发送接口的,我断点调试了你的代码,没找到
renmu123 commented
renmu123 commented
剪切板和批量上传的逻辑是不一致的,如果是剪切板那就不会传递参数给接口,如果是批量上传会将本地路径传递给接口
m986883511 commented
m986883511 commented
我明白了,剪贴板没有body体,哈哈
renmu123 commented
renmu123 commented
你可以尝试使用最新版的picLIst或者piclist-core,已经支持远程上传