开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

友情提示:文字/图片广告均非论坛意见,请担保交易勿直接付款,由此产生的责任自负
查看: 686|回复: 14
收起左侧

[易源码分享] deepseek写的快速curl编写源码

[复制链接]
结帖率:100% (15/15)
发表于 7 天前 | 显示全部楼层 |阅读模式   福建省南平市
分享源码
界面截图:
是否带模块: 调用了模块
备注说明: -
本帖最后由 wzyfe 于 2025-3-29 16:15 编辑

例子
.版本 2
.支持库 spec

' 示例1:获取天气API数据(基础GET请求)
.子程序 获取天气数据, 文本型
.局部变量 cmd, curl

' 构建命令
cmd.添加(生成_请求方法("GET"), 真)  ' + 设置GET方法
cmd.添加(生成_添加请求头("Accept", "application/json"), 真)  ' + 要求返回JSON格式
cmd.添加(生成_HTTP版本("2"), 真)  ' + 使用HTTP/2协议提升性能
cmd.添加(生成_超时设置(5), 真)  ' + 5秒超时防止卡死
cmd.添加(生成_请求地址("https://api.weather.com/v3/current?city=北京"), 真)  ' + 必须最后放URL

' 执行并返回结果用线程


' 示例2:提交登录表单(POST+Cookie管理)
.子程序 用户登录, 逻辑型
.局部变量 cmd, curl
.局部变量 返回数据, 文本型

' 构建登录请求
cmd.添加(生成_请求方法("POST"), 真)
cmd.添加(生成_添加请求头("X-Client", "Android/10"), 真)  ' + 添加设备标识
cmd.添加(生成_Cookie管理("session.dat"), 真)  ' + 自动保存会话Cookie
cmd.添加(生成_POST数据("username=test&password=123456"), 真)  ' + 表单格式数据
cmd.添加(生成_请求地址("https://passport.example.com/login"), 真)cmd.执行curl()‘线程



' 示例3:分块上传大文件(断点续传)
.子程序 上传视频文件, 文本型
.局部变量 cmd, curl

' 配置上传参数
cmd.添加(生成_分块上传("D:\\videos\\demo.mp4"), 真)  ' + 自动启用断点续传
cmd.添加(生成_限速控制("5M"), 真)  ' + 限制上传速度5MB/s
cmd.添加(生成_添加请求头("X-File-Hash", 取文件MD5("D:\\videos\\demo.mp4")), 真)  ' + 验证文件完整性
cmd.添加(生成_请求地址("https://storage.example.com/upload"), 真)

' 显示进度条(需自定义进度回调)
返回 (cmd.执行curl(&上传进度回调))

' 示例4:调用支付接口(HTTPS+调试)
.子程序 发起支付, 文本型
.局部变量 cmd, curl

' 安全支付配置
cmd.添加(生成_JSON请求(), 真)  ' + 自动设置JSON头
cmd.添加(生成_POST数据("{""order_id"":""202408011234"",""amount"":99.9}"), 真)
cmd.添加(生成_SSL验证(真), 真)  ' + 强制证书验证
cmd.添加(生成_安全传输(), 真)  ' + 启用HSTS安全策略
cmd.添加(生成_详细日志(), 真)  ' + 记录详细通信过程
cmd.添加(生成_请求地址("https://pay.example.com/v3/order"), 真)

' 执行并获取支付结果
返回 cmd.执行()‘线程’

' 示例5:多线程下载更新包(高性能场景)
.子程序 下载系统更新, 逻辑型
.局部变量 cmd, curl

' 下载优化配置
cmd.添加(生成_多线程下载(8), 真)  ' + 8线程加速下载
cmd.添加(生成_高效传输(), 真)  ' + 启用压缩传输
cmd.添加(生成_连接保持(30), 真)  ' + 30秒TCP保活
cmd.添加(生成_输出到文件("update.zip"), 真)  ' + 直接保存到文件
cmd.添加(生成_请求地址("https://download.example.com/v2.3/update.zip"), 真)

' 执行下载(返回是否成功)
返回 (cmd.执行() = "下载完成")
特殊场景处理示例:

代理穿透内网:

easyen
复制
cmd.添加(生成_代理设置("socks5h", "corp-proxy", 1080), 真)  ' + 使用企业代理
cmd.添加(生成_添加请求头("X-Proxy-Auth", 取代理凭证()), 真)  ' + 添加代理认证
国际网站访问:

easyen
复制
cmd.添加(生成_添加请求头("Accept-Language", "en-US,en;q=0.9"), 真)  ' + 设置英语语言
cmd.添加(生成_HTTP版本("3"), 真)  ' + HTTP/3提升跨国性能
API限流处理:

easyen
复制
cmd.添加(生成_重试机制(3, 2), 真)  ' + 失败后重试3次,间隔2秒
cmd.添加(生成_添加请求头("X-RateLimit-Burst", "10"), 真)  ' + 设置突发请求量
回调函数示例:

easyen
复制
.子程序 上传进度回调, 整数型
.参数 已传输, 长整数型
.参数 总大小, 长整数型
.参数 速度, 双精度小数型



curl.e (966.82 KB, 下载次数: 27)

结帖率:0% (0/1)

签到天数: 5 天

发表于 3 天前 | 显示全部楼层   山东省德州市
感谢分享
回复 支持 反对

使用道具 举报

结帖率:67% (2/3)

签到天数: 4 天

发表于 3 天前 | 显示全部楼层   江苏省苏州市
支持启用JavaScript吗?现代化网页基本都使用动态JavaScript,curl是不支持的吧好像
回复 支持 反对

使用道具 举报

结帖率:33% (1/3)

签到天数: 2 天

发表于 5 天前 | 显示全部楼层   湖北省仙桃市
感谢您对论坛的支持!
回复 支持 反对

使用道具 举报

签到天数: 3 天

发表于 5 天前 | 显示全部楼层   浙江省宁波市
感谢分享,支持开源!!!
回复 支持 反对

使用道具 举报

签到天数: 3 天

发表于 6 天前 | 显示全部楼层   广东省东莞市
已经顶贴,感谢您对论坛的支持!
回复 支持 反对

使用道具 举报

结帖率:80% (4/5)

签到天数: 1 天

发表于 6 天前 | 显示全部楼层   山东省潍坊市
已经顶贴,感谢您对论坛的支持!
回复 支持 反对

使用道具 举报

结帖率:100% (2/2)

签到天数: 2 天

发表于 6 天前 | 显示全部楼层   广东省深圳市
学习一下
回复 支持 反对

使用道具 举报

结帖率:100% (4/4)

签到天数: 5 天

发表于 6 天前 | 显示全部楼层   山东省淄博市
感谢分享
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)

签到天数: 5 天

发表于 6 天前 | 显示全部楼层   湖北省十堰市
学习进步!......
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表