102 lines
3.3 KiB
Bash
Executable File
102 lines
3.3 KiB
Bash
Executable File
#!/bin/bash
|
|
# 文件传输服务演示脚本
|
|
|
|
SERVER_URL="http://localhost:8000"
|
|
|
|
echo "🎉 文件传输服务演示"
|
|
echo "===================="
|
|
echo
|
|
|
|
# 检查服务器
|
|
echo "🔍 检查服务器状态..."
|
|
if ! curl -s "$SERVER_URL/api" > /dev/null; then
|
|
echo "❌ 服务器未启动,请先运行: python app.py"
|
|
exit 1
|
|
fi
|
|
echo "✅ 服务器运行正常"
|
|
echo
|
|
|
|
# 演示1: 分享文本(超级简单方式)
|
|
echo "📝 演示1: 分享文本(超级简单)"
|
|
echo "命令: curl -X POST --data \"Hello from demo!\" $SERVER_URL/api/text"
|
|
echo
|
|
result1=$(curl -s -X POST --data "Hello from demo!" "$SERVER_URL/api/text")
|
|
if echo "$result1" | grep -q '"code"'; then
|
|
code1=$(echo "$result1" | grep -o '"code":"[^"]*"' | cut -d'"' -f4)
|
|
echo "✅ 分享成功! 分享码: $code1"
|
|
echo "🔗 下载链接: $SERVER_URL/api/download/$code1"
|
|
else
|
|
echo "❌ 分享失败"
|
|
fi
|
|
echo
|
|
|
|
# 演示2: 创建临时文件并上传
|
|
echo "📤 演示2: 上传文件"
|
|
temp_file=$(mktemp)
|
|
echo "这是一个演示文件
|
|
创建时间: $(date)
|
|
文件内容测试" > "$temp_file"
|
|
|
|
echo "命令: curl -X POST -F \"file=@$temp_file\" $SERVER_URL/api/upload"
|
|
echo
|
|
result2=$(curl -s -X POST -F "file=@$temp_file" "$SERVER_URL/api/upload")
|
|
if echo "$result2" | grep -q '"code"'; then
|
|
code2=$(echo "$result2" | grep -o '"code":"[^"]*"' | cut -d'"' -f4)
|
|
echo "✅ 上传成功! 分享码: $code2"
|
|
echo "🔗 下载链接: $SERVER_URL/api/download/$code2"
|
|
else
|
|
echo "❌ 上传失败"
|
|
fi
|
|
rm -f "$temp_file"
|
|
echo
|
|
|
|
# 演示3: 表单方式分享文本
|
|
echo "📋 演示3: 表单方式分享文本(可指定文件名)"
|
|
echo "命令: curl -X POST -F \"content=#!/bin/bash
|
|
echo 'Hello Shell!'\" -F \"filename=demo.sh\" $SERVER_URL/api/share-text-form"
|
|
echo
|
|
result3=$(curl -s -X POST -F "content=#!/bin/bash
|
|
echo 'Hello Shell!'" -F "filename=demo.sh" "$SERVER_URL/api/share-text-form")
|
|
if echo "$result3" | grep -q '"code"'; then
|
|
code3=$(echo "$result3" | grep -o '"code":"[^"]*"' | cut -d'"' -f4)
|
|
echo "✅ 分享成功! 分享码: $code3"
|
|
echo "🔗 下载链接: $SERVER_URL/api/download/$code3"
|
|
else
|
|
echo "❌ 分享失败"
|
|
fi
|
|
echo
|
|
|
|
# 演示4: 查看所有分享
|
|
echo "📊 演示4: 查看所有分享"
|
|
echo "命令: curl $SERVER_URL/api/shares"
|
|
echo
|
|
shares_result=$(curl -s "$SERVER_URL/api/shares")
|
|
if echo "$shares_result" | grep -q '"total"'; then
|
|
total=$(echo "$shares_result" | grep -o '"total":[0-9]*' | cut -d':' -f2)
|
|
echo "✅ 当前共有 $total 个分享"
|
|
echo
|
|
echo "$shares_result" | python3 -m json.tool 2>/dev/null || echo "$shares_result"
|
|
else
|
|
echo "❌ 获取分享列表失败"
|
|
fi
|
|
echo
|
|
|
|
# 演示便捷函数
|
|
echo "🚀 演示5: 便捷函数使用"
|
|
echo "加载函数: source fileshare_functions.sh"
|
|
echo "然后就可以使用超级简单的命令:"
|
|
echo
|
|
echo " upload photo.jpg # 上传文件"
|
|
echo " share_text \"Hello World!\" # 分享文本"
|
|
echo " download AB12CD34 # 下载文件"
|
|
echo " info AB12CD34 # 查看信息"
|
|
echo " list_shares # 列出分享"
|
|
echo
|
|
|
|
echo "===================="
|
|
echo "🎉 演示完成!"
|
|
echo
|
|
echo "📖 查看完整教程: $SERVER_URL/curl"
|
|
echo "🌐 Web界面: $SERVER_URL"
|
|
echo "🧪 运行测试: ./verify_setup.sh"
|
|
echo "📝 查看示例: ./curl_examples.sh" |