抓取结果
帮助中心 薄荷图床-图床外链生成器-亚马逊图片上传-无限流量-全球加速-无限数量-图片转链接-跨境电商图片空间-图片托管-imagehost 拖动LOGO到书签栏 收藏薄荷图床吧!--> 首页 开通会员 --> --> --> --> 会员功能演示--> --> 关于我们 辅助工具 公告中心 自动化上传工具 API接口 薄荷图床 薄荷图床由承德新擎网络科技有限公司运营。 截至目前,已累计存储超1亿个文件,为用户提供了超过10亿次外链服务。 关于我们 了解我们的运营理念和营运方式 帮助中心 遇到问题?快速得到答案 更新日志 来看看最近更新了哪些功能 企业资质 资质齐全,使用更放心 数据安全 多重防护策略,给文件更安全的家 数据中心 全球节点部署,CDN加速 图片处理类工具 视频处理类工具 文本处理类工具 图片无损压缩 批量无损压缩图片大小 Favicon生成 生成网站fav站标 提取Exif信息 提取图片的Exif信息 --> --> --> --> AI智能抠图--> 免费去除背景和替换背景颜色--> --> --> --> VDAT转MP4 快速将VDAT文件转为可播放的MP4 --> --> --> --> 视频提取音频--> 免费快速从视频中提取出音频--> --> --> --> 广告法极限词检测 AI智能检测宣传语中被广告法限制的词汇 中秋国庆双节特惠活动中,会员大特价 >--> --> 帮助中心 👍大多数问题都能在这找到答案 --> 免费版 上传相关问题 免费版 账号相关问题 免费版 支持上传的文件格式 通用 查看文件相关问题 通用 不同格式的链接的区别 通用 跨境电商使用相关问题 通用 短信营销使用相关问题 技巧 快速从表格批量提取图片 技巧 Mavon-Editor接入API最佳实践 会员版 支持上传的文件格式 会员版 多人同时使用 会员版 子账号相关问题 会员版 自定义域名相关问题 会员版 自定义水印相关问题 会员版 查看历史上传的文件 会员版 存储空间相关问题 会员版 删除文件相关问题 会员版 修改账号密码 会员版 API相关问题 会员版 API文档-上传 会员版 API文档-Debug 会员版 API文档-文件列表--> 会员版 更换链接里的文件 会员版 套餐升级相关问题 会员版 导出链接相关问题 会员版 设定文件夹 会员版 账号荣誉 免费版 - 上传相关问题 本地文件 上传教程 请参考:本地文件上传。 URL链接(链接转链接) 上传教程 请参考:URL链接上传。 Base64 上传教程 请参考:Base64编码上传。 为什么使用免费版上传速度不理想? 首先对您表示抱歉,免费版由于很多恶意用户违规利用,上传违规文件,对薄荷图床平台造成了很大威胁,因此在某些时段我们可能会进行多重AI鉴定违规,可能导致上传速度较慢。 同时免费版由于使用人数较多,大家共用同一个接口,也会对速度有影响。 如果您对上传速度有较高要求,可以开通会员,不受AI审核影响。 免费版 - 账号相关问题 如何注册账号 免费版不需要登录或注册即可使用。如需开通会员账号,请点击:开通会员。 没有账号,怎么知道我是谁? 薄荷图床目前依据IP地址来识别用户身份。 显示我的IP地址被封禁,怎么办? IP地址被封禁,通常是由于涉及《用户协议》或国家法律法规严格禁止的行为,因此被封禁。如您认为系统误封或对封禁处置有异议,请通过首页被封禁界面所示的邮箱进行申诉。 IP地址被封禁,通常会持续多久? IP地址被封禁,通常按《用户协议》的规定,永久封禁。 通用 - 查看文件相关问题 不同文件的展示效果有什么区别? 如您在浏览器直接打开文件链接,不同格式的文件会被浏览器以不同效果显示,请参考:查看/下载文件。 免费版如何查看上传记录? 免费版不支持查看上传记录,请妥善保存链接。 会员版如何查看上传记录? 请打开您的专用网址,点击左上角的管理后台按钮,登录管理后台查看历史上传的文件,还可以在后台再次导出TXT格式或表格格式排版的链接。 通用 - 不同格式的链接的区别 1. 链接(URL) 标准的URL链接,由协议+域名+路径构成。比如: https://example.com/i/2025/10/01/123.png 一般适合直接在浏览器中打开图片、跨境电商、APP排名截图提交、数据标注等情况使用。 2. 图片网页链接 通过将图片嵌入网页中,实现定义网页名称,适合短信营销等用户使用,链接格式类似于: https://example.com/m?i=2025/10/01/123.png&t=这里写网页标题 因为能够自定义图片页面的标题,所以特别适合营销、活动策划等用户群体使用。 3. 论坛代码 适用于论坛程序的链接格式,链接格式类似于: [img]https://example.com/i/2025/10/01/123.png[/img] 用于dedecms等论坛程序的评论区发图片使用。 4. Markdown 适用于Markdown的链接格式,链接格式类似于:  用于任意markdown编辑器中插入图片使用。 5. HTML HTML格式的img标签的链接格式,链接格式类似于: 用于HTML文档。 6. 超链接图片 HTML的a包裹img标签的链接格式,链接格式类似于: <a href='您的目标网址' target='_blank'><img src="https:/example.com/i/2025/10/01/123.png" alt='您的图片描述' /></a> 用于HTML文档。 免费版 - 支持上传的文件格式 免费版支持上传什么格式的文件? 图片:JPG、JPEG、PNG、GIF、WebP、BMP、SVG、ICO 等 文档:DOC、DOCX、XLS、XLSX、PPT、TXT 等 音频:MP3 等 视频:暂不支持 压缩包:暂不支持 通用 - 跨境电商使用相关问题 薄荷图床支持上传到什么跨境电商平台? 薄荷图床本身不对链接做任何限制,您可以把您的链接上传到您想上传的任何平台。 跨境电商平台上传问题答疑 情况1:提示超时错误(Time out) 这种情况下请首先用浏览器打开您上传的图片链接,看下是否能正常打开,如果能够正常打开,说明图片链接是没有问题的。 可能导致问题出现的原因如下: (1) 跨境电商平台或者ERP平台的上传接口不稳定,比如高峰期很容易出现部分图片上传失败的情况。 (2) 国家重大活动的情况下, 中国与国际的网络通信会有一定影响,可能导致跨境电商平台无法访问到国内的网络,导致链接拉取失败,一般活动结束后就会恢复。 (3) 账号被相关平台关闭了上传权限。 (4) 单次上传文件过多,电商平台的接口短时间内无法承受或认为遭受了攻击,拒绝了上传请求,导致超时。 (5) 部分跨境电商的上传接口仅支持http协议,请联系电商平台确认是否是协议问题。(亚马逊可能返回错误代码20000或20014)。薄荷图床会员版支持http和https双协议,可以自由切换使用。 (6) 文件名尽量避免使用空格和非字母数字字符和中日文,如$、@、?、&、* 等。 (7) 沃尔玛上传失败可能是因为域名不在其白名单中,请开case联系他们的客服加白名单。 建议多尝试几次,或者设每次选择少量图片尝试能不能上传或者稍后再试。 超时原因导致的上传失败请直接在电商平台开case联系相关电商平台的客服确认。 情况2:提示链接不存在(404 NOT FOUND) (1) 这种情况一般是上传了错误的链接,或者链接在表格中被破坏了格式,比如有的表格会自动在链接后面加上一个小数点或者空格或回车,典型表现是在表格中点开链接,跳转到浏览器后,链接末尾多出了"%0a"字符,这样就会导致链接失效,请仔细检查链接情况。 (2) 请确认链接是否正确,或者链接所指向的文件是否被删除了。 (3) 如果您使用的是免费版,请确认文件的上传时间,免费版的链接有效期只有三天,超出三天后链接会失效。 提示链接不存在请直接联系薄荷图床客服,不用联系电商平台。 情况3:图片上传到平台成功了,但不显示在店铺 这种情况一般是电商平台的网络缓存问题,一般稍等一会即可显示。 也有可能是商品正在审核,审核通过后即可正常显示。 此种情况请稍等十五分钟,如果还是不显示请直接联系相关电商平台的客服确认。 情况4:表格里填写了多张图片,但上传后只显示一张 这种情况一般表格格式的问题。 请仔细核对自己表格的格式是否完全符合电商平台所要求的格式(比如电商平台要求横向排列的链接,而自己表格中提交的是竖向排列的链接)。 如核对没有问题还是无法解决,请仔细检查每条链接的末尾是否有多余的字符(空格或回车)。 此种情况请直接在电商平台确认表格格式规则。 情况5:未提示错误原因,但就是上传失败了 这种情况请联系电商平台的客服,确认他们所接受的图片格式,比如部分平台只接受jpeg格式的产品图。也可能是其他的原因,请直接联系电商平台的客服确认。 通用 - 短信营销使用相关问题 如何正确在群发短信中使用链接? 1. 建议移除 https:// 前缀 在薄荷图床中生成的短网址默认带有 https:// 前缀,其实在短信营销的场景下,完全可以去掉这个前缀,来进一步减少链接的长度,节省更多的字符,降低成本。薄荷图床会员版自带短网址功能。 2. 在短信中,链接的前后要加上空格 在短信营销人员中最常见的一个错误就是,发短信的时候没有给链接和文字之间加上空格,这样就导致了手机系统将后面的文字也会当成链接的一部分,造成所谓的链接打不开,链接错误等情况。 只要在链接的前后各加上一个空格,即可避免这种情况的出现。 3. 群发之前请务必先进行测试 在您大批量投放营销内容之前,请务必先少量群发或内部群发进行效果测试,避免例如上述的忘记加空格导致链接打不开,以及排版不正确等情况出现。 薄荷图床建议您群发之前先进行少量测试,可以对多个品牌的手机进行短信测试,来查看效果,确定没问题后再群发。 短信发送链接后链接打不开 情况1:短信链接格式错误 在短信营销人员中最常见的一个错误就是,发短信的时候没有给链接和文字之间加上空格,这样就导致了手机系统将后面的文字也会当成链接的一部分,造成所谓的链接打不开,链接错误等情况。 只要在链接的前后各加上一个空格,即可避免这种情况的出现。 情况2:链接失效 果您使用的是免费版,请确认文件的上传时间,免费版的链接有效期只有三天,超出三天后链接会失效。 如果您使用的是会员版,请确保您没有删除链接所对应的文件。 技巧 - 快速从表格批量提取图片 如何从表格中批量提取图片上传到薄荷图床? 表格(xlsx)文件其实只是一种特殊的压缩包,我们可以非常方便地提取其中的图片。 1. 将您的表格文件的后缀修改为 rar。 2. 修改为 rar 文件后,将其解压。 3. 解压后,可以看到一个名称为 xl 的文件夹。 4. 打开 xl 文件夹后,可以看到名称为 media 的文件夹,打开这个 media 文件夹即可看到这个表格中所包含的所有图片。 技巧 - Mavon-Editor接入图床上传API最佳实践 Mavon-Editor接入图床上传API最佳实践 本文介绍MavonEditor富文本编辑器如何接入会员图床的上传API接口,以Nuxt2框架为例。 1. 首先必须在会员后台开启API功能。 2. npm安装MavonEditor后,在Nuxt中引入MavonEditor。 // /nuxt.config.js ··· plugins: [ '@/plugins/vueMarkdown', ], ··· // /plugins/vueMarkdown.js import Vue from 'vue' import mavonEditor from 'mavon-editor' import "mavon-editor/dist/css/index.css" Vue.use(mavonEditor) 4. 在nuxt.config.js中开启代理。 // /nuxt.config.js ··· proxy:{ '/imgapi':{ target:"填写你的会员域名", pathRewrite:{ '^/imgapi':'', changeOrigin : true } } }, ··· 4. 在编辑器页面按如下方式编写代码。 // /pages/index.vue 5. 测试上传。 6. 以上图片即为调用成功的情况,其他框架如Vue2、Vue3、React、Angular等原理都大同小异,可参考开发。 会员版 - 支持上传的文件格式 会员版支持上传什么格式的文件? 任何套餐都支持上传如下格式的文件: 图片:JPG、JPEG、PNG、GIF、WebP、BMP、SVG、ICO、JFIF、HEIC、EMF、TGA、PSD、AI、TIFF、TIF、PCX、EMF、AVIF、PSB 等 文档:DOC、DOCX、XLS、XLSX、PPT、TXT、CSV、PDF、RTF、JSON、OFD、MD、SQL、CSS、VTT、TEX、RMD、ASS、TTF、YAML 等 音频:MP3、AAC、FLAC、WAV 等 视频:MP4、AVI、M4V、MOV、FLV 等 压缩包:ZIP、RAR、TAR、JAR、7Z、GZ、WIN、ROM 等 会员版 - 多人同时使用 会员版是否支持多人同时使用? 薄荷图床会员版支持多人/多设备同时使用。 支持登录态共存(即多人多设备同时登陆一个账号)。 虽然支持多人多设备同时使用,但如果是多人使用,非常建议开通带有子账号功能的套餐,这样比较安全,可以实现权限隔离。如您将主账号共享给他人,他人将可以登录后台进行管理操作以及文件操作,由此造成的任何损失,薄荷图床不对此负责。 子账号的问题可以参考:会员版 - 子账号相关问题 会员版 - 子账号相关问题 哪些类型的套餐支持子账号功能? 目前,除了轻量年度版套餐以外均支持子账号功能。 主账号 与 子账号 的概念 在您购买薄荷图床会员之后,您将获得一个初始账号密码,这个账号密码是您的主账号,拥有您会员的一切权限,包括文件上传,后台管理,配置修改,操作审计等。 主账号是您账号的基础,您账号的会员有效期、会员等级、余额、发票、信用评级、联系方式等都与主账号直接绑定。 同时,您可以为您的员工、同事、朋友等创建子账号。子账号仅允许登录前台上传文件,不允许登录后台,没有后台管理,配置修改,操作审计等功能。 子账号的目的是,为您不希望具备管理权限的第三者开启一个仅允许上传文件的通道,并且您可以在后台的【上传日志】中对子账号上传记录进行溯源,可以查询到文件的上传者。非常适合企业、团队使用。 创建子账号 首先,登录您会员的管理后台,点击右上角的设置,再点击新增子账号。 输入子账号的账号名称和密码后,点击新增。 新增成功后,会自动跳转到管理子账号的页面,在这里可以查看以及管理您的子账号。新增成功后即可使用子账号登录您的会员首页上传文件,并且使用子账号上传的文件可以在后台的上传日志功能中进行溯源。 管理子账号 在后台,点击页面右上角的设置,再点击管理子账号即可看到子账号列表,点击对应的子账号右侧的编辑按钮,即可对子账号进行管理。 例如,这里将【test_0001】子账号的【是否允许登录】选项修改为禁止,这个子账号就无法再登录图床,除非您在后台中将其改为允许。 请注意:将子账号禁止登录后,仍会占用子账号数量限制的额度,如需释放额度,请使用删除子账号功能。 删除子账号 通常情况下,如您想要暂时禁用一个子账号,并需要后期恢复使用的情况下, 只需要将其【是否允许登录】选项改为禁止就可以了,等到后期需要使用的时候再改成允许。 而如果您确定一个子账号将永久不再使用,您可以直接删除这个子账号,删除后这个子账号将无法登录,并且会恢复子账号数量限制的额度。 子账号数量限制 不同会员的套餐对子账号的数量有不同的限制,这规定了您除了一个主账号以外,最多再同时拥有多少个子账号。 目前子账号的数量限制如下: 轻量年度版:不支持子账号功能,仅有1个主账号。 高级年度版:最多同时拥有5个子账号 和 1个主账号。 轻量永久版:最多同时拥有5个子账号 和 1个主账号。 高级永久版:最多同时拥有10个子账号 和 1个主账号。 定制版:按需定制,最多同时拥有500个子账号 和 1个主账号。 子账号使用规范 薄荷图床的子账号功能是为了帮助用户降低企业在薄荷图床的采购成本,并加强后台权限限制,提供更方便、更安全的服务。 在此之上,我们对子账号有一定的限制: 1. 使用子账号上传的文件的合法性由会员本人直接负责。如因分配的子账号被他人上传违规文件,法律责任归属会员本人,且由此导致的账号信用评级下降,违规处理等均直接影响到主账号。 2. 子账号是为了帮助用户降低成本,提高安全性。您不得以任何理由对子账号进行倒卖,不得在第三方平台公开子账号的账号密码、不得通过子账号对图床进行渗透,破解,逆向工程等。如系统检测到上述行为,由此导致的账号信用评级下降,违规处理等均直接影响到主账号。同时,倒卖子账号为侵犯薄荷图床版权、商标权并以此获利的违法行为,如情节严重,我们会以法律手段予以打击。 3. 如您发现子账号的使用者上传了违规文件,请立刻删除违规文件,并联系客服进行报备,及时报备后不会对账号进行下调评级,也不会对主账号进行处罚。 4. 如您在使用子账号的过程中遇到了任何问题或需要任何帮助,请随时与客服联系,我们将及时为您处理。 会员版 - 自定义域名相关问题 自定义域名是什么?我应该如何操作? 自定义域名是指将您的域名解析至薄荷图床指定的服务器上,由此生成您域名的图片链接。 自定义域名的前提是您拥有一个域名。 在您拥有域名的前提下,联系客服手把手带您操作。 自定义域名支持什么后缀? 自定义域名支持全部常见英文后缀,以及部分中文后缀。 注意:如您使用.ltd、.org、.edu、 .law 后缀的域名请提交相关组织单位的证明文件。 注意:不支持 .gov后缀。 自定义域名免费吗? 免费。 如产生退款将收取50元/次的自定义域名操作费用。 自定义域名支持防盗链吗? 支持,请编写好符合格式的防盗链规则,提交给客服。 自定义域名需要备案吗? 如您选购非大陆地区的服务器套餐则无需备案。 自定义域名是否支持HTTPS? 支持,需要您自备 Nginx 格式的SSL证书,支持泛域名和单域名证书(OV、EV、DV等)。 是否支持HTTP和HTTPS双协议? 默认支持。 SSL证书到期前,是否会提醒我更新? 是的,SSL证书到期前一周内,客服会联系您更新SSL证书。 自定义域名是否支持数据打包迁出? 支持。如您会员到期不打算续费,请提前三个工作日与客服联系免费迁出。如会员过期后要求迁出数据,可能产生费用。 要在哪里注册域名? 可以在阿里云,腾讯云,godaddy等知名平台注册域名。 会员版 - 自定义水印相关问题 我应该如何设置水印? 首先请登录您会员的管理后台,点击页面右上角的设置,再点击水印设置。 水印默认关闭,如需开启,将开启水印选项调整为开启,然后点击更新按钮即可,开启后上传的文件将按照您设置的水印内容和规则自动添加水印。 请注意:开启水印后上传的图片都会添加上水印,水印操作需要服务器进行大量计算,因此可能对上传速度造成一定影响(实验测试约12%左右)。 如何调整水印的颜色? 在水印的配置项中,找到水印颜色风格选项,点击输入框即可弹出选项卡, 选择自己喜欢的颜色即可。 如何设定水印的位置? 在水印的配置项中,找到水印位置选项,点击输入框即可弹出选项卡,点选所需水印位置。 如何设定水印字体大小? 在水印的配置项中,找到水印文字大小选项,在输入框中输入1~99的数字即可设置大小,数字越大,文字越大。 如何设定水印透明度? 在水印的配置项中,找到水印透明度选项,在输入框中输入0~100的数字即可设置透明度,透明度可选择范围由0(完全透明)到100(完全不透明)。 是否支持自定义水印字体? 很遗憾,由于字体版权风险原因,目前暂不支持用户主动设置水印的字体。 当然,如果您拥有某字体的版权或授权,可以联系客服审核后替换成您的字体。 是否支持图片水印? 图片水印功能已在规划中,将在后期上线。 会员版 - 存储空间相关问题 如何查看我的存储空间使用情况? 首先请登录您会员的管理后台,点击页面右上角的设置,再点击账号信息,即可看到空间使用情况。 我是否可以删除不需要的文件(链接)来恢复空间? 是的,您可以随时在后台删除掉您不需要的文件(链接)来恢复空间,和手机空间、电脑空间、硬盘空间等是一样的逻辑。 当我升级会员后,空间是否会实时提升? 是的,当您升级到空间更大的会员后,空间会实时提升。 会员版是否支持扩容空间,以及价格是多少? 是的,会员支持扩容空间。 年度版会员扩容费用为30元/GB/年。请注意:如果会员到期未续费,空间将连同会员一起失效。 永久版会员扩容费用为30元/GB/永久有效。永久有效,不需要续费。 是否有除了扩容以外的方式增加空间? 是的,您也可以开通多个会员账号,每个账号都是独立的空间。 会员版 - 删除文件相关问题 如何删除不需要的文件? 首先请登录您会员的管理后台,在管理后台中对应的文件即可删除。 支持单选删除,也支持多选删除。 如何找到我要删除的文件? 看一下您的链接,下面链接中红色部分就是您的文件在管理后台的存储位置: https://example.com/i/2025/09/30/1234.jpg 以上面的链接为例,首先您应该在后台首页找到2025文件夹,点击2025文件进入,然后可以看到09文件夹,点击进入,可以看到30文件夹,再点击进入,即可看到1234.jpg这个文件,点击右侧的删除图标即可删除。 删除后,文件占用的空间会恢复吗? 是的,当您在后台删除掉您不需要的文件(链接)后,空间就会恢复,和手机空间、电脑空间、硬盘空间等是一样的逻辑。 删除后,文件链接还有效吗? 从图床的角度来说,文件删除后链接就失效了就打不开了,会不会影响到别的平台,要看他们有没有保存您的链接到他们服务器,具体如下: 如果您用在跨境电商平台、erp平台等: 部分电商平台会在您使用链接上传图片后,将链接替换成电商平台的链接,这样即使您在后台删除图片了也不会有任何影响。 而如果电商平台是直接引用的原链接,那么就会失效,造成影响。 因此,请提前与电商平台客服确认规则。 但通用的方式是:除非一个商品完全下架,否则不建议让链接失效。 我们为您准备了一份来自“用户反馈”的信息表,此表格说明了哪些链接在成功上传到电商平台后可以删除,哪些不可以删除(请注意:以下信息来源于用户反馈,薄荷图床不对此做任何保证,请以电商平台官方解释为准) 如果您用在短信,或者软件消息中: 在后台删除文件后,链接会失效,请确保文件所指向的链接已经不再使用,再进行删除。 如果您用在开发的网站中: 在后台删除文件后,链接会失效,如果您要在后台删除文件,请务必提前确认网站已不再引用该文件的链接,以免造成影响。 删除后,能否恢复删掉的文件? 您在后台操作删除的文件将被移动到一个用户不可见的,系统内置的回收站,删除的文件将在此保留一定时间,如您误删了文件,可在删除操作后的7个自然日内联系客服为您免费恢复误删的数据。 在删除操作后的第8个自然日,您删除的文件将从回收站中抹除,并转储一份安全备份到数据备份硬盘中进行冷存储,并在删除操作后的6个自然月后永久销毁,在销毁前的时间内您仍可联系客服进行数据恢复,此次恢复的数据将产生数据恢复服务费用。 * 数据恢复服务不属于会员权益中的一部分,在某些极端条件下也存在无法恢复的可能,比如用户设置回收站无法解析的文件名称、文件违规、文件内部存在风险、回收站已使用容量远超会员套餐的空间大小、恶意刷量刷空间等。 会员版 - 更换链接里的文件 如何实现链接不变,但更换链接里面的文件? 第一步:请登录到您的管理后台,找到您的文件所在的文件夹,这张名为logo.png的文件就是我们要替换内容的文件,可以看到,是一张金色的薄荷图床logo图片: 第二步:在此页面,点击页面右上角的上传按钮,上传新的文件(注意,新文件必须和旧文件格式相同或兼容): 这个u5x13.png就是我们刚刚上传的新文件,内容是绿色调的薄荷图床logo: 第三步:将原来的logo.png删除,然后把这个新文件u5x13.png的名字改为logo.png。 第四步:打开原来的链接,就会发现已经替换成功了。 按上述操作完成后,链接内容没变? 在链接页面按下键盘的 Ctrl + F5 强制刷新浏览器缓存即可。 如果强制刷新缓存后还是旧文件,说明替换有问题,请联系客服协助您。 会员版 - 套餐升级相关问题 套餐是否支持升级? 是的,升级规则如下: 年度版支持补差价升级到更高级类型的年度版。 永久版支持补差价升级到更高级类型的永久版。 年度版距离到期时间一个月以上支持补差价升级到更高级类型的永久版。 注:以上“补差价”规则是 以补差价时候的目标套餐的官网售价 减去 已支付的金额。 套餐是否支持降级? 套餐不支持降级。 常规套餐是否可以升级为独享服务器套餐? 不支持,需单独开通独享服务器套餐账号。 会员版 - 导出链接相关问题 我有几种方式批量导出链接? 目前提供三种方便的批量导出链接方式: 第一种:您可以在前台上传完成后,在页面中直接获取到本次上传的链接,可以进行复制或者导出表格的操作。 第二种:您可以登录 管理后台,在想导出链接的文件夹右侧点击此按钮,可以导出此文件夹以及其所有子文件夹中所有文件的链接的TXT文档。 第三种:进入有文件的文件夹中,选择要导出链接的文件后,点击导出选中的链接按钮,即可弹出导出窗口,此种导出方式也支持导出各种格式的链接以及横版竖版的表格。 会员版 - 设定文件夹 如何把文件上传到指定的文件夹? 目前提供三种方式: 第一种:如果后台不存在这个文件夹,可以直接在前台页面输入新文件夹的名称,然后再选择文件上传,这样就会自动新建这个文件夹,并且把这些文件上传到这个文件夹里。 同时支持多级文件夹,语法: folder1/folder2/forder3···。 第二种:如果后台已经存在这个文件夹,则可以直接点击选择已有文件夹按钮,来选择要上传到的文件夹,选择文件夹之后,再上传,即可上传到这个文件夹里。(当然,即使后台已经存在这个文件夹,也可以按第一种方法操作) 第三种:在管理后台中,进入目标文件夹,然后点击右上角的上传按钮,上传文件即可上传到这个文件夹中。 会员版 - 账号荣誉 会员账号荣誉及介绍 目前有六种可获得的荣誉: 第一种:x级会员 获得方式:请参考会员等级。 第二种:x年会员 获得方式:每365天为一年周期,初始等级为 1年会员。 第三种:永久版 获得方式:账号套餐类型为轻量永久版、标准永久版或高级永久版。 第四种:良好信用认证 获得方式:账号从未出现违规情况。 第五种:顶级信用认证 获得方式:账号从未出现违规情况,在一定时间后系统自动颁发。 第六种:卓越贡献用户 获得方式:对图床提出建设性意见或建议、对发现的Bug及时反馈等帮助建设图床平台以及维护平台秩序等。 图样如下: 会员版 - 查看历史上传的文件 在哪里查看历史上传的文件? 在会员首页点击页面左上角的管理后台按钮,登录后台查看历史上传的文件。 如何查看历史上传的文件? 看一下您的链接,下面链接中红色部分就是您的文件在管理后台的存储位置: https://example.com/i/2025/09/30/1234.jpg 以上面的链接为例,首先您应该在后台首页找到2025文件夹,点击2025文件进入,然后可以看到09文件夹,点击进入,可以看到30文件夹,再点击进入,即可看到1234.jpg这个文件。 会员版 - 修改账号密码 如何修改账号密码? 在会员首页点击页面左上角的管理后台按钮,登录后台后,点击页面右上角的设置,再点击修改账密。 会员版 - API相关问题 哪些套餐支持API功能? 高级年度版、高级永久版、独享服务器套餐支持API功能。 如何开启API并获取API Token? 请登录到您的管理后台,点击右上角的设置按钮,再点击API设置,即可看到API Token,然后将开启API的选项调整为“开启”,再点击更新按钮即可。 如何获取API接口地址? 请登录到您的管理后台,点击右上角的设置按钮,再点击API设置,即可看到API接口地址。 如何刷新API Token? 请登录到您的管理后台,点击右上角的设置按钮,再点击API设置,即可看到API Token,然后点击重新生成Token按钮即可。 API Token是否会定期失效? 为了方便用户使用,目前,API Token是长期有效的,不会定期失效,如需刷新API Token,可手动刷新。 API是否有调用速率限制? 没有。但建议您通过 “循环” 等方式将文件排队请求接口,而不是同时发起多个调用请求,以获得更稳定的体验。 API支持以什么方式上传文件? 支持上传本地文件,URL链接,以及BASE64。 API状态异常,如何解决? 如调用API时,提示API状态异常,则表示您账号的API接口出现了被违规使用、被滥用等情况。请等待系统定期审核恢复或联系客服处理。 API支持什么语言调用? API就像一家餐厅的标准菜单,它不关心您是用筷子、刀叉还是手来吃饭。只要您能按照菜单上的说明点餐(即按照API文档的格式发送请求),并能读懂餐厅给您的小票(即解析API返回的数据),您就能享用美食。因此,您使用任何编程语言都可以调用API。 薄荷图床的API是基于标准的HTTP协议和JSON数据格式设计的,因此本身不限制任何编程语言。只要您使用的语言能够发送HTTP请求和处理JSON数据(现在几乎所有主流语言都支持),就可以调用它,比如 Python, Java, JavaScript, Go, PHP, C# 等等。 实现的关键在于根据我们的API文档来构建正确的请求。建议您先查阅API文档了解具体的接口要求,然后使用您熟悉的语言的网络库(如 Python 的 requests)进行开发。 我不会写代码,如何通过API上传? 可使用薄荷图床自动化上传工具实现大致和API相同的功能。 会员版 - API文档-上传 API文档 V12.0.0+ 接口地址:https://会员专用网址/api/upload/ 返回格式:JSON 请求方式:POST BODY:Form-Data 适用会员程序版本:V12.0.0 以上 请求参数 参数名称 类型 必选 描述 api_token String 是 您的api_token,用于验证请求者身份。填写错误将导致请求失败,报402错误。 upload_format String 否 可选值 file 或 base64 或 url。 即通过二进制文件上传还是通过base64编码上传还是通过远程URL上传。 - 如果通过文件上传,则下一个参数 uploadedFile 就必须是二进制文件 - 如果通过base64编码上传,则下一个参数 uploadedFile 就必须是完整的Base64编码 - 如果通过url上传,则下一个参数 uploadedFile 就必须是完整的URL地址(必须包含协议头) 如不填写则默认按照二进制文件的方式上传 uploadedFile File、String 是 要上传的文件,缺少该参数报406错误。 - 上一个参数 upload_format 如果是file或者置空就必须以二进制文件的方式上传 - 上一个参数 upload_format 如果是base64就必须通过base64编码的方式上传 - 上一个参数 upload_format 如果是url就必须通过url的方式上传 protocol_type String 否 需要返回HTTPS协议的链接还是HTTP协议的链接,取值 http 即返回HTTP协议的链接。 不填写该字段则默认返回HTTPS协议的链接(薄荷图床本身支持双协议访问,因此无需担心协议变更后影响正常访问。) mode Number(Int)、String 否 命名方式,可取值 1,2,3,4。 - 1:自动重命名 - 2:保留原文件名 - 3:自动重命名(短链接模式) - 4:自定义文件名称(如选4,则下一个参数 custom_filename 必须填写,否则报【803参数不足】错误) 不填默认为自动重命名。 custom_filename Number(Int)、String 否 自定义文件名称的文件名,可带格式后缀或不带格式后缀,如同一目录下出现重复名称,则系统将自动添加防覆盖后缀,例如 sample_0001.jpg。 如果上一个参数【mode】取值为4,则必须填写这个参数,否则报【803参数不足】错误。 uploadPath String 否 要上传的目录,不填默认为 年/月/日 目录。多级目录以 / 分隔 watermark Number(Int)、String 否 是否开启水印,可取值 1,0。 - 1:开启水印 - 0:关闭水印 不填默认为关闭水印。关于水印文字颜色、透明度、水印位置等设置,继承管理后台中的设置,不需要在API中声明。 image_compress Number(Int)、String 否 是否开启图片无损压缩,可取值 1,0。 - 1:开启无损压缩 - 0:关闭无损压缩 不填默认为关闭无损压缩。 ※只有png和jpg(jpeg)格式的图片才可以被压缩,其他格式的文件会自动跳过。 image_compress_level Number(Int)、String 否 压缩质量,可取值 0到100之间的任意整数,数值越大,质量越高,数值越小,质量越低,图片损失也越大,通常低于50后就属于明显的有损压缩范围内了。 如果上一个参数【image_compress】取值为1,则必须填写这个参数,否则报【801参数不足】错误。 请求示例 Ruby PHP Python Java Golang LUA Vue2+Axios JQuery Ajax Auto.js Picgo APIFOX require 'uri' require 'net/http' uri = URI('你的API接口地址') # 入参 res = Net::HTTP.post_form( uri, 'api_token' => '你的token', 'upload_format' => 'url', # 示例,使用URL方式上传,下面upload_format填写的是完整的包含协议头的URL地址 'uploadedFile' => 'https://static.zixiaoyun.com/riyugo/image/logo.jpg' ) puts res.body if res.is_a?(Net::HTTPSuccess) <?php // 此处仅提供一个简单的示例,具体实现起来方案有很多,可按需开发 $url = "你的接口地址"; // 定义POST DATA 数组 $post_data = [ 'uploadedFile'=>new \CURLFile('/www/wwwroot/myProduct/demo.jpg'),// 如果使用这个方式请填写文件的绝对路径 'api_token' => '你的token', 'upload_format'=> '通过文件上传还是通过Base64或者URL上传', // 可选值 file 、base64 或者 url,不填则默认为file 'mode' => '命名方式', 'uploadPath' => '上传目录', 'watermark' => '是否开启水印' ]; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_SAFE_UPLOAD, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data); $output = curl_exec($ch); curl_close($ch); // 打印调用结果 echo $output; ?> # 导入requests包 import requests # 此处仅提供一个简单的示例,具体实现起来方案有很多,可按需开发 def python_demo(): url = '你的接口地址' files = {'uploadedFile': ('demo.jpg', open('demo.jpg', 'rb'), "image/jpeg")} data = {'api_token': '你的token', 'upload_format':'通过文件上传还是通过Base64或者URL上传', # 可选值 file 、base64 或者 url,不填则默认为file 'mode': '命名方式', 'uploadPath': '上传目录', 'watermark': '是否开启水印', } res = requests.post(url, data=data, files=files) print(res.text) python_demo() // 此处仅提供一个简单的示例,具体实现起来方案有很多,可按需开发 // !!!注意,这里使用的类名是 *Main*,如果你直接下载此文件进行运行,那么注意你应该把文件的名字设置为 *Main.java* import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; import java.net.URLEncoder; public class Main { public static void main(String[] args) { String apiUrl = "你的接口地址"; String field1 = "你的API_token"; String field2 = "url"; // 设置上传方式,这里设置为 url String field3 = "https://example.com/123.jpg"; // 通过url上传方式要在 uploadedFile 字段填写一个包含协议的URL try { // 准备要发送的数据 String postData = "api_token=" + URLEncoder.encode(field1, "UTF-8") + "&upload_format=" + URLEncoder.encode(field2, "UTF-8") + "&uploadedFile=" + URLEncoder.encode(field3, "UTF-8"); // 创建URL对象 URL url = new URL(apiUrl); // 创建HttpURLConnection对象 HttpURLConnection conn = (HttpURLConnection) url.openConnection(); // 设置请求方法为POST ** 发送请求方式,必须是 POST conn.setRequestMethod("POST"); // 允许输出数据 conn.setDoOutput(true); // 发送POST请求 try (DataOutputStream dos = new DataOutputStream(conn.getOutputStream())) { dos.writeBytes(postData); dos.flush(); } // 获取响应结果 int responseCode = conn.getResponseCode(); StringBuilder response = new StringBuilder(); try (BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()))) { String line; while ((line = in.readLine()) != null) { response.append(line); } } // 打印响应结果 System.out.println("响应码:" + responseCode); System.out.println("响应内容:" + response.toString()); // 关闭连接 conn.disconnect(); } catch (IOException e) { e.printStackTrace(); } } } // 此处仅提供一个简单的示例,具体实现起来方案有很多,可按需开发 package main import ( "fmt" "io" "io/ioutil" "net/http" "net/url" "strings" ) func main() { // 准备要发送的数据 data := url.Values{} data.Set("api_token", "你的API_token") data.Set("upload_format", "url") // 设置上传方式,这里设置为 url data.Set("uploadedFile", "https://static.zixiaoyun.com/riyugo/image/logo.jpg") // 通过url上传方式要在 uploadedFile 字段填写一个包含协议的URL // 发送 POST 请求 -- 发送请求方式,必须是 POST resp, err := http.Post("你的接口地址", "application/x-www-form-urlencoded", strings.NewReader(data.Encode())) if err != nil { fmt.Println("请求失败:", err) return } defer func(Body io.ReadCloser) { err := Body.Close() if err != nil { } }(resp.Body) // 读取响应内容 body, err := ioutil.ReadAll(resp.Body) if err != nil { fmt.Println("无法读取响应内容:", err) return } // 验证响应状态 if resp.StatusCode == http.StatusOK { // 打印响应内容 fmt.Println("请求成功:", string(body)) } else { // 打印报错信息 fmt.Println("请求失败,错误码:", resp.StatusCode) } } -- 此处仅提供一个简单的示例,具体实现起来方案有很多,可按需开发 local http = require("socket.http") local ltn12 = require("ltn12") local url = require("socket.url") -- 创建一个帮助函数,用来构建查询字符串 local function buildQueryString(data) local queryString = {} for key, value in pairs(data) do table.insert(queryString, url.escape(key) .. "=" .. url.escape(value)) end return table.concat(queryString, "&") end -- 准备数据 local postData = { api_token = "你的API_token", upload_format = "url", -- 设置上传方式,这里设置为 url uploadedFile = "https://example.com/123.jpg" -- 通过url上传方式要在 uploadedFile 字段填写一个包含协议的URL } -- 将数据编码为URL参数的格式 local postDataEncoded = buildQueryString(postData) -- 通过POST发送请求 local response = {} local res, code, headers, status = http.request({ url = "你的接口地址", method = "POST", -- 发送请求方式,必须是 POST headers = { ["Content-Type"] = "application/x-www-form-urlencoded", ["Content-Length"] = string.len(postDataEncoded) }, source = ltn12.source.string(postDataEncoded), sink = ltn12.sink.table(response) }) -- 验证状态码 if code == 200 then local responseBody = table.concat(response) -- 响应结果表转换为字符串 print("请求成功:" .. responseBody) else print("请求失败,错误码:" .. code) end // 此处仅提供一个简单的示例,具体实现起来方案有很多,可按需开发 import Axios from "axios"; export default { methods:{ fileUpload(event){ console.log(event); let file = event.target.files let formData = new FormData() formData.append('uploadedFile', file[0]) formData.append("api_token", "你的token"); formData.append("upload_format", "通过文件上传还是通过Base64或者URL上传"); // 可选值 file 、base64 或者 url,不填则默认为file formData.append("mode", "命名方式"); formData.append("uploadPath", "上传目录"); formData.append("watermark", "是否开启水印"); // 文件上传 Axios.post('你的接口地址', formData) .then((res) => { let data = res.data; console.log(data); }).catch((e)=>{ console.log(e); }) }, } } // 此处仅提供一个简单的示例,具体实现起来方案有很多,可按需开发 function uploadFile(){ var uploadedFile = document.getElementById('boheimg').files; var formData = new FormData(); formData.append("uploadedFile", uploadedFile[0]); formData.append("api_token", "你的token"); formData.append("upload_format", "通过文件上传还是通过Base64或者URL上传"); // 可选值 file 、base64 或者 url,不填则默认为file formData.append("mode", "命名方式"); formData.append("uploadPath", "上传目录"); formData.append("watermark", "是否开启水印"); $.ajax({ url: "你的接口地址",//传向后台服务器文件 type: 'post', //传递方法 data: formData, //传递的数据 dataType : 'json', //传递数据的格式 contentType: false, processData: false, success: function (responseStr) { console.log(responseStr) }, error: function () { alert("上传错误!"); } }); } // 此处仅提供一个简单的示例,具体实现起来方案有很多,可按需开发 var url url = "你的接口地址" var res = http.postMultipart(url, { "api_token": "你的token", "upload_format": "file", // 使用File方式上传 "uploadedFile" : open("/文件路径/文件名称.jpg"), // 此处为格式示例,具体根据本地目录调整 }) log(res.body.string()) // 打印响应结果 本条目部分内容由薄荷图床会员用户 zaozao 贡献。 按照如下操作流程配置即可: 按照如下操作流程配置即可: 返回值参数说明 参数名称 类型 描述 示例 status String 返回的状态值 success statusCode String 返回的状态码 200 resultData String 处理后返回的结果 success:File uploaded uploadFormat String 上传方式 file protocolType String 指定返回的URL的协议类型 https url String 返回的文件链接 https://123.com/abc.jpg lessurl String 自动协议链接(不含https://或http://前缀的链接) 123.com/abc.jpg bbsurl String 图片BBS代码 [img]https://123.com/abc.jpg[/img] markdownurl String 图片MarkDown代码  htmlurl String 图片HTML代码 <img src="https://123.com/abc.jpg" /> originFileName String 原文件名称 abc.jpg fileNameBody String 不含扩展名的原文件名 abc fileNameExt String 不含原文件名的扩展名 jpg fileSize Int 文件大小(单位:字节) 10340 image_x Int 图片X轴(宽度,单位:像素) 1980 image_y Int 图片Y轴(高度,单位:像素) 1080 image_pixels Int 图片像素数 2138400 image_bits Int 图片位深度 8 返回值示例 一般情况下都会返回下列状态码,如果上传的不是图片格式,则 image_x,image_y,image_pixels,image_bits 的返回值会是 null: { "status": "success", "statusCode": "200", "resultData": "success:File uploaded", "url": "返回的URL(链接)", "lessurl": "返回的URL(链接)(不包含协议名)", "bbsurl": "图片BBS代码", "markdownurl": "图片MarkDown代码", "htmlurl": "图片HTML代码", "originFileName": "原文件名称", "fileNameBody": "不含扩展名的原文件名", "fileNameExt": "不含原文件名的扩展名", "fileSize": 文件大小(单位:字节), "image_x": 图片X轴(宽度,单位:像素), "image_y": 图片Y轴(高度,单位:像素), "image_pixels": 图片像素数, "image_bits": 图片位深度 } 返回状态码说明 状态码 描述 200 成功 401 失败:未开启API上传功能。(在后台开启即可) 402 失败:api_token错误。(请查证api_token) 403 失败:文件尺寸超限。(升级套餐或调整文件尺寸) 405 失败:未被支持的扩展名(文件格式)。 406 失败:没有选择文件就执行了上传操作。 407 失败:账号违规,API被封禁。 408 失败:账号剩余磁盘空间不足。(升级套餐或扩容) 409 失败:账号存在风险且未通过实名认证。 500 失败:其他错误或服务器内部错误。(请联系客服处理) 700 失败:链接不符合规则,请添加https://或http://协议头。 ★ 只有通过URL上传出错后才会出现这个错误代码 701 失败:下载文件发生未知错误,可能是对方链接设置了密码或设置了相关权限。 ★ 只有通过URL上传出错后才会出现这个错误代码 702 失败:请求下载的文件不存在或对方URL开启了防盗链(类似于404 NOT FOUND)。请确认URL是否正确以及对方的防盗链策略。 ★ 只有通过URL上传出错后才会出现这个错误代码 703 失败:无权限下载该文件。表示对方服务器设置了目录权限或下载权限。 ★ 只有通过URL上传出错后才会出现这个错误代码 704 失败:对方服务器错误。表示对方服务器出现了无法请求的情况,比如防火墙隔离、500Error、高负载等。 ★ 只有通过URL上传出错后才会出现这个错误代码 705 失败:提交的网址无法打开,请求下载的文件不存在或对方URL开启了防盗链。 ★ 只有通过URL上传出错后才会出现这个错误代码 706 失败:不支持的文件类型或链接有误。请确保上传的文件是图床支持的文件类型。 ★ 只有通过URL上传出错后才会出现这个错误代码 801 失败:开启了无损压缩但未填写压缩质量参数。 ★ 只有开启无损压缩上传出错后才会出现这个错误代码 802 失败:开启了无损压缩但压缩质量的值不是整数或这个数值不在0~100的范围内。 ★ 只有开启无损压缩上传出错后才会出现这个错误代码 803 失败:命名方式选择为 4 但并未设定 custom_filename 参数。 ★ 只有命名方式为4并且参数不足的情况下后才会出现这个错误代码 其他问题 1. 为什么请求参数中的参数名称中有“驼峰式命名”也有“蛇形命名”? 答:历史遗留问题,最初的设计模式是以“驼峰式命名”的,但后来为了更方便识别和现代化,后期新增的参数变为了“蛇形命名”,目前如果将其强制统一,会导致历史版本的API用户调用失败,因此目前保留了最初的设计模式。 2. 为什么会报 402 API Token is incorrect(Token错误) 的错误? 答:三种可能的原因,一是确实填错了token;二是参数名称填错了,注意是api_token,而不是APItoken或APIToken;三是采用了错误的传输方式,导致接口无法解析出token,注意要使用Form-Data传输数据。强烈建议写代码调用前,使用我们的示例代码测试跑通或使用APIFOX测试跑通,了解原理后再自行编写代码。 3. 你们建议使用什么软件测试调用API? 答:我们建议使用 APIFOX测试调用API接口。 4. 经过种种测试,我还是无法成功调用接口,怎么办? 答:请联系我们的官方客服,申请联系技术协助。</> 程序员 helps 程序员 </>。 会员版 - API文档-文件列表 API文档 - 获取文件列表 接口地址:https://会员专用网址/api/filelist/ 返回格式:JSON 请求方式:POST BODY:Form-Data 适用会员程序版本:V13.0.4 及以上 请求参数 参数名称 类型 必选 描述 api_token String 是 您的api_token,用于验证请求者身份。填写错误将导致请求失败,报402错误。 path String 否 要查询的目录路径,例如:/uploads/2024。路径不能包含 .. 等危险字符。不填写则默认为全部路径。 sort String 否 排序方式,可选值:ASC(正序),DESC(倒序)。 不填写则默认为 ASC。 quantity Number(Int) 否 返回文件数量,最大值为2000。 如果实际符合标准的文件数量超过此值,则只返回统计信息而不返回文件列表。 不填写则默认为2000。 fields String 否 返回值需要返回哪些参数,多个字段用逗号分隔。 默认值:filename,path,ext,type 可用字段:filename, path, ext, type, size, size_readable, modified_time, modified_time_formatted, created_time, created_time_formatted, mime_type, is_dir keyword_mode String 否 关键词过滤模式,可选值:except(排除包含指定关键词),include(只检索包含指定关键词)。 如果为空,则不进行关键词过滤,忽略keyword参数。 keyword String 否 关键词,用于文件名过滤。最大长度100字符。 必须与keyword_mode配合使用。 ext_mode String 否 扩展名过滤模式,可选值:except(排除包含指定扩展名),include(只检索包含指定扩展名)。 如果为空,则不进行扩展名过滤,忽略ext参数。 ext String 否 扩展名,多个用逗号分隔,例如:jpg,png,gif。 必须与ext_mode配合使用。 type String 否 文件类型过滤,可选值:file(只返回文件),dir(只返回目录),all(返回全部)。 不填写则默认为all。 time_from Number(Int)、String 否 起始时间(修改时间),可以是时间戳(如1704067200)或可解析的日期字符串(如2024-01-01 09:00:00)。 用于筛选在此时间之后修改的文件。 time_to Number(Int)、String 否 结束时间(修改时间),可以是时间戳(如1704067200)或可解析的日期字符串(如2024-01-01 09:00:00)。 用于筛选在此时间之前修改的文件。 size_from Number(Int) 否 最小文件大小(单位:字节),例如:1024(1KB)。 用于筛选大于等于此大小的文件。 size_to Number(Int) 否 最大文件大小(单位:字节),例如:1048576(1MB)。 用于筛选小于等于此大小的文件。 depth Number(Int) 否 递归深度,可选值:-1(无限,但最大限制为10层),0(当前目录),1(一级子目录),以此类推。 不填写则默认为-1。出于安全考虑,最大递归深度限制为10层。 请求示例 Ruby PHP--> Python Java Golang LUA Vue2+Axios JQuery Ajax Auto.js--> Picgo--> APIFOX--> require 'uri' require 'net/http' uri = URI('你的API接口地址') # 入参 res = Net::HTTP.post_form( uri, 'api_token' => '你的token', 'path' => 'myPath', # 要查询的目录路径 'sort' => 'desc', # 排序方式:文件名倒序 # 其他参数 ··· ) puts res.body if res.is_a?(Net::HTTPSuccess) --> --> --> --> --> # 导入requests包 import requests # 此处仅提供一个简单的示例,具体实现起来方案有很多,可按需开发 def python_demo(): url = '你的接口地址' data = { 'api_token': '你的token', 'path':'myPath', # 要查询的目录路径 # 其他参数··· } res = requests.post(url, data=data) print(res.text) python_demo() // 此处仅提供一个简单的示例,具体实现起来方案有很多,可按需开发 // !!!注意,这里使用的类名是 *Main*,如果你直接下载此文件进行运行,那么注意你应该把文件的名字设置为 *Main.java* import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; import java.net.URLEncoder; public class Main { public static void main(String[] args) { String apiUrl = "你的接口地址"; String field1 = "你的API_token"; String field2 = "myPath"; // 要查询的目录路径 try { // 准备要发送的数据 String postData = "api_token=" + URLEncoder.encode(field1, "UTF-8") + "&path=" + URLEncoder.encode(field2, "UTF-8"); // 创建URL对象 URL url = new URL(apiUrl); // 创建HttpURLConnection对象 HttpURLConnection conn = (HttpURLConnection) url.openConnection(); // 设置请求方法为POST ** 发送请求方式,必须是 POST conn.setRequestMethod("POST"); // 允许输出数据 conn.setDoOutput(true); // 发送POST请求 try (DataOutputStream dos = new DataOutputStream(conn.getOutputStream())) { dos.writeBytes(postData); dos.flush(); } // 获取响应结果 int responseCode = conn.getResponseCode(); StringBuilder response = new StringBuilder(); try (BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()))) { String line; while ((line = in.readLine()) != null) { response.append(line); } } // 打印响应结果 System.out.println("响应码:" + responseCode); System.out.println("响应内容:" + response.toString()); // 关闭连接 conn.disconnect(); } catch (IOException e) { e.printStackTrace(); } } } // 此处仅提供一个简单的示例,具体实现起来方案有很多,可按需开发 package main import ( "fmt" "io" "io/ioutil" "net/http" "net/url" "strings" ) func main() { // 准备要发送的数据 data := url.Values{} data.Set("api_token", "你的API_token") data.Set("path", "myPath") // 要查询的目录路径 // 发送 POST 请求 -- 发送请求方式,必须是 POST resp, err := http.Post("你的接口地址", "application/x-www-form-urlencoded", strings.NewReader(data.Encode())) if err != nil { fmt.Println("请求失败:", err) return } defer func(Body io.ReadCloser) { err := Body.Close() if err != nil { } }(resp.Body) // 读取响应内容 body, err := ioutil.ReadAll(resp.Body) if err != nil { fmt.Println("无法读取响应内容:", err) return } // 验证响应状态 if resp.StatusCode == http.StatusOK { // 打印响应内容 fmt.Println("请求成功:", string(body)) } else { // 打印报错信息 fmt.Println("请求失败,错误码:", resp.StatusCode) } } -- 此处仅提供一个简单的示例,具体实现起来方案有很多,可按需开发 local http = require("socket.http") local ltn12 = require("ltn12") local url = require("socket.url") -- 创建一个帮助函数,用来构建查询字符串 local function buildQueryString(data) local queryString = {} for key, value in pairs(data) do table.insert(queryString, url.escape(key) .. "=" .. url.escape(value)) end return table.concat(queryString, "&") end -- 准备数据 local postData = { api_token = "你的API_token", path = "myPath", -- 要查询的目录路径 } -- 将数据编码为URL参数的格式 local postDataEncoded = buildQueryString(postData) -- 通过POST发送请求 local response = {} local res, code, headers, status = http.request({ url = "你的接口地址", method = "POST", -- 发送请求方式,必须是 POST headers = { ["Content-Type"] = "application/x-www-form-urlencoded", ["Content-Length"] = string.len(postDataEncoded) }, source = ltn12.source.string(postDataEncoded), sink = ltn12.sink.table(response) }) -- 验证状态码 if code == 200 then local responseBody = table.concat(response) -- 响应结果表转换为字符串 print("请求成功:" .. responseBody) else print("请求失败,错误码:" .. code) end // 此处仅提供一个简单的示例,具体实现起来方案有很多,可按需开发 import Axios from "axios"; export default { methods:{ getFilelist(event){ console.log(event); let formData = new FormData() formData.append("api_token", "你的token"); formData.append("path", "myPath"); // 要查询的目录路径 // 调用接口 Axios.post('你的接口地址', formData) .then((res) => { let data = res.data; console.log(data); }).catch((e)=>{ console.log(e); }) }, } } // 此处仅提供一个简单的示例,具体实现起来方案有很多,可按需开发 function getFilelist(){ var formData = new FormData(); formData.append("api_token", "你的token"); formData.append("path", "myPath"); // 要查询的目录路径 $.ajax({ url: "你的接口地址", type: 'post', // 传递方法 data: formData, // 传递的数据 dataType : 'json', // 传递数据的格式 contentType: false, processData: false, success: function (responseStr) { console.log(responseStr) }, error: function () { alert("上传错误!"); } }); } --> --> --> --> --> --> --> --> --> --> --> --> --> 返回值参数说明 参数名称 类型 描述 示例 status String 返回的状态值 success statusCode String 返回的状态码 200 resultData String 处理后返回的结果 File list retrieved successfully data Object 返回的数据对象 {...} data.path String 查询的路径 /uploads data.total_files_lmt Int 符合条件的文件总数(实际返回文件列表的文件数量,受quantity数量限制) 2000 data.total_dirs_lmt Int 符合条件的目录总数(实际返回文件列表的文件数量,受quantity数量限制) 20 data.total_files_and_dirs_lmt Int 实际返回的文件条目数(文件数+目录数)(实际返回文件列表的文件数量,受quantity数量限制) 2020 data.total_files_unlmt Int 符合条件的文件总数(接口查询到的文件列表内的文件总数量,不受quantity字段数量限制) 9000 data.total_dirs_unlmt Int 符合条件的目录总数(接口查询到的文件列表内的文件总数量,不受quantity字段数量限制) 20 data.total_files_and_dirs_unlmt Int 实际返回的文件条目数(文件数+目录数)(接口查询到的文件列表内的文件总数量,不受quantity字段数量限制) 9020 data.skipped_files Int 因过滤条件跳过的文件数量 5 data.limit_quantity Int 请求中设置的返回数量限制 2000 data.has_more_files Boolean 是否有更多文件未返回(例如目录下有3000个文件,但quantity字段设置为500,则存在未返回的文件) true data.execution_time String 查询执行时间 1.234s data.depth Int 实际使用的递归深度 2 data.files Array 文件列表数组 [...] data.files[].filename String 文件名 image.jpg data.files[].path String 相对路径 uploads/2024/image.jpg data.files[].ext String 文件扩展名 jpg data.files[].type String 文件类型:dir(目录),file(文件) dir data.files[].size Int 文件大小(字节) 24576 data.files[].size_readable String 人类可读的文件大小 24 KB data.files[].created_time Int 创建时间戳 1704067200 data.files[].created_time_formatted String 格式化的创建时间 2024-01-01 00:00:00 data.files[].modified_time Int 修改时间戳 1704067200 data.files[].modified_time_formatted String 格式化的修改时间 2024-01-01 00:00:00 data.files[].is_dir Boolean 是否为目录 false 返回值示例 一般情况下都会返回下列状态码: { "status": "success", "statusCode": "200", "resultData": "File list retrieved successfully.", "data": { "path": "2025", "total_files_lmt": 4, "total_dirs_lmt": 4, "total_files_and_dirs_lmt": 8, "skipped_files": 0, "limit_quantity": 2000, "total_files_unlmt": 4, "total_dirs_unlmt": 4, "total_files_and_dirs_unlmt": 8, "has_more": false, "execution_time": "0.002s", "depth": 10, "files": [ { "filename": "111.wav", "path": "2025\/11\/27\/111.wav", "ext": "wav", "type": "file", "size": 1127468, "size_readable": "1.08 MB", "modified_time": 1764233816, "modified_time_formatted": "2025-11-27 16:56:56", "created_time": 1764233816, "created_time_formatted": "2025-11-27 16:56:56", "is_dir": false }, { "filename": "123.png", "path": "2025\/12\/01\/123.png", "ext": "png", "type": "file", "size": 49449, "size_readable": "48.29 KB", "modified_time": 1764555864, "modified_time_formatted": "2025-12-01 10:24:24", "created_time": 1764555864, "created_time_formatted": "2025-12-01 10:24:24", "is_dir": false }, { "filename": "222.wav", "path": "2025\/11\/27\/222.wav", "ext": "wav", "type": "file", "size": 1127468, "size_readable": "1.08 MB", "modified_time": 1764233912, "modified_time_formatted": "2025-11-27 16:58:32", "created_time": 1764233912, "created_time_formatted": "2025-11-27 16:58:32", "is_dir": false }, { "filename": "333.wav", "path": "2025\/11\/27\/333.wav", "ext": "wav", "type": "file", "size": 1127468, "size_readable": "1.08 MB", "modified_time": 1764233908, "modified_time_formatted": "2025-11-27 16:58:28", "created_time": 1764233908, "created_time_formatted": "2025-11-27 16:58:28", "is_dir": false }, { "filename": "27", "path": "2025\/11\/27", "type": "dir", "modified_time": 1764233912, "modified_time_formatted": "2025-11-27 16:58:32", "created_time": 1764233912, "created_time_formatted": "2025-11-27 16:58:32", "is_dir": true }, { "filename": "12", "path": "2025\/12", "type": "dir", "modified_time": 1764555864, "modified_time_formatted": "2025-12-01 10:24:24", "created_time": 1764555864, "created_time_formatted": "2025-12-01 10:24:24", "is_dir": true }, { "filename": "11", "path": "2025\/11", "type": "dir", "modified_time": 1764233816, "modified_time_formatted": "2025-11-27 16:56:56", "created_time": 1764233816, "created_time_formatted": "2025-11-27 16:56:56", "is_dir": true }, { "filename": "01", "path": "2025\/12\/01", "type": "dir", "modified_time": 1764555864, "modified_time_formatted": "2025-12-01 10:24:24", "created_time": 1764555864, "created_time_formatted": "2025-12-01 10:24:24", "is_dir": true } ] } } 返回状态码说明 状态码 描述 200 成功 401 失败:未开启API上传功能。(在后台开启即可) 402 失败:api_token错误。(请查证api_token) 404 失败:要查询的目录路径不存在。(请查证目录路径) 407 失败:账号违规,API被封禁。 409 失败:账号存在风险且未通过实名认证。 500 失败:服务器内部错误。(请联系客服处理) 其他问题 1. 为什么返回的文件列表数量少于实际文件数量? 答:可能的原因:① 设置了quantity参数限制了返回数量;② 使用了过滤条件(如关键词、扩展名、时间范围等)过滤掉了一部分文件;③ 文件数量超过2000,系统只返回统计信息。 2. 如何获取完整的文件列表? 答:可以通过设置depth=0只获取当前目录,然后逐级获取子目录;或者使用更具体的过滤条件减少单次查询的数据量。 3. 为什么递归深度最大只能到10? 答:出于安全考虑,防止恶意用户通过无限递归消耗服务器资源。如果您的目录结构较深,建议分级查询。 4. 如何提高查询性能? 答:① 尽量使用过滤条件减少返回数据量;② 只请求需要的字段(通过fields参数);③ 合理设置depth参数;④ 避免查询过大的目录。 5. 经过种种测试,我还是无法成功调用接口,怎么办? 答:请联系我们的官方客服,申请联系技术协助。</> 程序员 helps 程序员 </>。 会员版 - API文档-Debug 对上传参数进行Debug和验证 接口地址:https://会员专用网址/api/debug/ 返回格式:String(接口将把接收到的数据以字符串的方式返回,详见返回值示例部分) 请求方式:POST BODY:任意 适用会员程序版本:V12.8.0 及以上 说明 此接口适用于您调用API时,发生数据错误,比如API token错误等图床无法接收到预期格式的数据时,您用于检测格式的情况。 您通过POST方式调用此接口,接口会把本次接收到的所有数据(无论是否符合上传接口的预期格式)返回给您,以便于您排查格式问题。 如何调用,参数是什么? 您完全不需要写任何多余代码,当您调用上传接口发生数据错误失败的时候,把接口地址改为此接口地址,然后再调用,即可看到图床接收到的数据。 返回值示例 1. 正确的数据(Form-Data或x-www-form-urlencoded,一般file上传就是Form-Data,而URL或Base64上传这种字符串形式就是x-www-form-urlencoded): API Debug 信息:接收到的Content-Type: multipart/form-data;参数内容:Array ( [api_token] => 070f5534c6640dc8a762 [_FILES] => Array ( [uploadedFile] => Array ( [name] => ibzmxg.png [type] => image/png [tmp_name] => /tmp/phplrBRch [error] => 0 [size] => 799445 ) ) ) API Debug 信息:接收到的Content-Type: application/x-www-form-urlencoded;参数内容:Array ( [api_token] => 070f5534c6640dc8a762 [uploadedFile] => https://static.zixiaoyun.com/i/2023/07/25/u5x13.png [upload_format] => url ) 2. 错误的数据(JSON): API Debug 信息:接收到的Content-Type: application/json;原始输入数据(非预期格式):{ "api_token": "070f5534c6640dc8a762", "upload_format": "url", "uploadedFile": "https:\/\/static.zixiaoyun.com\/riyugo\/image\/logo.jpg", "uploadPath": "test" } 3. 错误的数据(Text): API Debug 信息:接收到的Content-Type: text/plain;原始输入数据(非预期格式):123456 4. 错误的数据(空数据): API Debug 信息:接收到的Content-Type: text/plain;数据为空 5. 错误的数据(空请求): API Debug 信息:接收到的Content-Type: 未设置;数据为空 免费即可使用,会员链接长期有效 立即使用 开通会员 支持上传超多格式的文件外链工具 我们致力于将外链变成简单的事 念念不忘,必有回响 --> --> 产品介绍 本地文件上传 URL链接上传 Base64编码上传 查看/下载文件 会员介绍 解决方案 跨境电商 短信营销 网站/博客 API接口 自动化上传工具 用户服务 帮助中心 公告中心 问题反馈--> 违规举报 图床数据迁移 服务器状态公示 关于我们 关于我们 企业资质 用户协议 加入我们 更新日志 Github 新擎科技旗下平台,相关服务主体:承德新擎网络科技有限公司。好新擎,好心情。 Copyright © 2019-2025 薄荷图床 All Rights Reserved 版权所有 承德新擎网络科技有限公司 RSS Sitemap 营业执照 互联网ICP备案号:冀ICP备2023001204号-1 增值电信业务经营许可证:冀B2-20230097 冀公网安备 13082502000108号 友情链接: 免费文本工具| Exif信息提取| 公众号排版| 兼一书虫| 烽火研报| 电子画册制作| 动画短视频制作 交换友链 ×关闭 交换友链 1:在贵站友链位置添加薄荷图床的文字或logo。 2:联系薄荷图床官方客服,发送网址。 3:交换成功。 * 违规网站不可交换友链、请勿添加nofollow。 * 友链位置需在页面明显位置,内页不交换。 * 工具站优先,建站半年以上,目前对权重没有要求。 客服微信二维码 关闭 会员功能演示--> --> --> --> --> --> 节--> --> --> --> --> --> --> --> --> 春--> --> --> --> -->
网站标题
帮助中心 薄荷图床-图床外链生成器-亚马逊图片上传-无限流量-全球加速-无限数量-图片转链接-跨境电商图片空间-图片托管-imagehost
关键词
薄荷图床,图片转链接,图床,免费图床,PDF转链接,图片外链,表格转链接,文档转链接,视频转链接,电商图床,亚马逊图床,沃尔玛图床,shopify图床,免费公共图床,公共图床,无限流量
站点描述
薄荷图床是一款不限流量的图床软件,支持批量上传,不仅仅是图片,您还可以上传文档,PDF,表格,音视频,压缩包等数百种格式。不限流量,不限上传次数,全球CDN加速,累计外链次数已经超过了四亿次。薄荷图床是最好用的图床软件。