站点地址: https://www.dlink666.com/
点进去直接使用,无需注册无需登陆
目前最大支持20G文件,国内下载跑满带宽
直链测试:https://kcxaichat.oss-cn-shenzhen.aliyuncs.com/upload/aipic/2510241444/dHXWLuhhXVA1
GitHub开源地址:https://github.com/InvertGeek/directlink?tab=readme-ov-file
python接入例子
import requests
def upload_file(file_path: str, file_name: str, url: str = "http://127.0.0.1:8080/api/upload", ):
"""
使用 PUT 方法上传文件二进制
:param url: 填写directlink部署地址+api/upload
:param file_path: 本地文件路径
:param file_name: 上传时的文件名
:return: 响应文件直链
"""
with open(file_path, "rb") as f:
file_data = f.read()
response = requests.put(url, data=file_data, params={"name": file_name})
response.raise_for_status() # 抛出异常(如果请求失败)
return response.text
if __name__ == "__main__":
print('开始上传')
res = upload_file(
file_path="test.mp4",
file_name="test.mp4"
)
print(f"上传成功: {res}")js接入例子
import fs from 'fs';
import fetch from 'node-fetch';
/**
* 使用 PUT 方法上传文件二进制
* @param {string} filePath 本地文件路径
* @param {string} fileName 上传时的文件名
* @param {string} url 上传接口地址(默认 http://127.0.0.1:8080/api/upload)
* @returns {Promise<string>} 响应的文件直链
*/
async function uploadFile(filePath, fileName, url = 'http://127.0.0.1:8080/api/upload') {
const fullUrl = `${url}?name=${encodeURIComponent(fileName)}`;
const fileData = fs.readFileSync(filePath);
const response = await fetch(fullUrl, {
method: 'PUT',
body: fileData
});
if (!response.ok) {
throw new Error(`上传失败:${response.status} ${response.statusText}`);
}
return await response.text();
}
(async () => {
console.log('开始上传')
try {
const res = await uploadFile('test.mp4', 'test.mp4');
console.log(`上传成功: ${res}`);
} catch (err) {
console.error(err);
}
})();