全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 1528|回复: 7

某资源网的图片上传api,附源码

[复制链接]
发表于 2023-10-29 20:35:39 | 显示全部楼层 |阅读模式
本帖最后由 Faxlok 于 2023-11-9 08:53 编辑

起因:帮人找个ppt模板,找了好久没找到免费的。看到网站也没说要收费,得登录才知道了,登进去才说要收费,很恶心人,为啥不早说,浪费时间。上一个网站也是这样,这个网站也是一个鸟样,于是js代码如下


import { randomUUID } from "crypto"

function reandom() {
  return randomUUID().substring(0, 4)
}

// 文件名路径
const filename = '1.jpg'
const imgFile = Bun.file(filename);
// 不严谨
const ext = filename.split('.')[1]

const requestAuth = new Request('https://www.tukuppt.com/api/upload/sign?type=applyupload&name='+reandom()+'&ext='+ext+'&kid=12')
requestAuth.headers.set('Cookie', 'auth_token=登录后cookie对应的字段值')


fetch(requestAuth, {
}).then(d=>d.json()).then(async(d)=>{

  console.log("获取到的auth数据", d)

  const requestBody = new FormData()
  requestBody.append('id',"WU_FILE_" + Math.floor(Math.random() * 100));
  requestBody.append('name', reandom())
  requestBody.append('type', 'image/jpeg')
  requestBody.append('lastModifiedDate', new Date())
  requestBody.append('size', imgFile.size)
  requestBody.append('policy', d.policy)
  requestBody.append('authorization', d.authorization)
  requestBody.append('file', imgFile)
  
  // console.log(requestBody)

  const requestImg = new Request('https://v0.api.upyun.com/tukuppt-img',{
    method: 'post',
    body: requestBody
  })

  const reponse = (await(await fetch(requestImg)).json())

  console.log('上传返回的json',reponse)

  const url = 'https://img.tukuppt.com/' + reponse.url

  console.log("图片地址:" + url)

})


需要bun支持,也可以用node,只需要把Bun.file改成node获取文件的api就可以了。
需要登录后才能使用,获取auth_token
图片格式为jpg或png,每张大小控制在 5MB 之内

此图片如果显示异常说明代码可能失效


代码仅供学习
发表于 2023-10-30 00:41:33 | 显示全部楼层
根据你的代码,我改成php+html了,想研究的也可以看看我的
https://hostloc.com/thread-1222325-1-1.html
发表于 2023-10-30 00:43:16 | 显示全部楼层
好好好,顶
发表于 2023-10-30 00:46:17 | 显示全部楼层
这种小站图片死的快
发表于 2023-10-30 07:39:25 | 显示全部楼层
可以获取下载地址?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2024-4-29 00:30 , Processed in 0.107267 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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