自动网页登录,填写表单可以用 puppeteer 实现
loveme199
-
-
vcpkg 会从 github 拉取源码很容易出现网络超时问题。所以根本解决办法是科学啊上网,我用的是v2。
通过环境变量设置HTTP代理:
powershell 设置方法
$env:HTTP_PROXY="127.0.0.1:10809"实际上我没有设置环境变量,应该是vcpkg自动检测到了系统代理。
PS D:\helloworld> vcpkg install --host-triplet=x64-mingw-dynamic Detecting compiler hash for triplet x64-mingw-dynamic... -- Automatically setting %HTTP(S)_PROXY% environment variables to "127.0.0.1:10809".
有个opengl很大,100多M,一直卡着下不来
D:\dev\vcpkg\buildtrees\versioning_\versions\opengl-registry\22f7aa58ee78c9f0db904b6251e9265f2be26f9d: info: installing overlay port from here -- Downloading https://github.com/KhronosGroup/OpenGL-Registry/archive/3530768138c5ba3dfbb2c43c830493f632f7ea33.tar.gz -> KhronosGroup-OpenGL-Registry-3530768138c5ba3dfbb2c43c83049
解决办法,可以手动下载,然后放到 vcpkg/downloads/ 目录下,即可。我的vcpkg根目录是 "d:/dev/vcpkg"
D:/dev/vcpkg/downloads/KhronosGroup-OpenGL-Registry-3530768138c5ba3dfbb2c43c830493f632f7ea33.tar.gz
-
POST请求的嘛,你搞错GET了
-
领StarkNet空投?
-
参考
https://github.com/tailwindlabs/tailwindcss/pull/7742
安装postcss-remove-rules
然后postcss.config.js
配置module.exports = { plugins: { tailwindcss: {}, autoprefixer: {}, "postcss-remove-rules": { rulesToRemove: { "img,\nvideo": "height", }, }, }, }
-
你不发连接,怎么给你下
-
优化后。我们解析请求
header
中Range
实现分片下载。这样就能实现拖拽播放,不用将文件一次性全部下载完毕。@GetMapping("/download") public void download(HttpServletResponse res, HttpServletRequest request, @RequestParam("fileName") String fileName) { GetObjectArgs objectArgs = GetObjectArgs.builder().bucket(BUCKETNAME) .object(fileName).build(); StatObjectArgs statObjectArgs = StatObjectArgs.builder().bucket(BUCKETNAME).object(fileName).build(); long fileSize; try { fileSize = minioClient.statObject(statObjectArgs).size(); } catch (Exception e) { log.error("文件下载失败:{}", fileName, e); return; } String range = request.getHeader("Range"); if(range != null && range.startsWith("bytes=")) { try { int idx = range.indexOf("-"); long start = Long.parseLong(range.substring("bytes=".length(), idx)); long end = minioClient.statObject(statObjectArgs).size() - 1; if (idx + 1 < range.length()) { end = Long.parseLong(range.substring(idx + 1)); } long length = end - start + 1; InputStream inputStream = minioClient.getObject(GetObjectArgs.builder().bucket(BUCKETNAME).object(fileName).offset(start).length(length).build()); res.setStatus(HttpServletResponse.SC_PARTIAL_CONTENT); res.setHeader("Content-Range", "bytes " + start + "-" + end + "/" + fileSize); res.setContentType("application/octet-stream"); res.setHeader("Content-Disposition", "attachment; filename=" + FileUtil.getName(fileName)); res.setContentLength((int)length); try { IOUtils.copy(inputStream, res.getOutputStream()); inputStream.close(); res.flushBuffer(); } catch (ClientAbortException e) { // pass } } catch (Exception e) { log.error("断点下载失败:{}", fileName, e); } } else { try (InputStream is = minioClient.getObject(objectArgs)) { res.setContentType("application/octet-stream"); res.addHeader("Content-Disposition", "attachment;filename=" + FileUtil.getName(fileName)); res.setContentLength((int)fileSize); IOUtils.copy(is, res.getOutputStream()); res.flushBuffer(); } catch (Exception e) { log.error("文件下载失败:{}", fileName, e); } } }
-
优化前代码
@GetMapping("/download") public void download(HttpServletResponse res, @RequestParam("fileName") String fileName) { GetObjectArgs objectArgs = GetObjectArgs.builder().bucket(BUCKETNAME) .object(fileName).build(); try (GetObjectResponse response = minioClient.getObject(objectArgs)){ byte[] buf = new byte[1024]; int len; try (FastByteArrayOutputStream os = new FastByteArrayOutputStream()){ while ((len=response.read(buf))!=-1){ os.write(buf,0,len); } os.flush(); byte[] bytes = os.toByteArray(); res.setCharacterEncoding("utf-8"); res.setContentType("application/octet-stream"); res.setContentLength(bytes.length); res.addHeader("Content-Disposition", "attachment;filename=" + FileUtil.getName(fileName)); try (ServletOutputStream stream = res.getOutputStream()){ stream.write(bytes); stream.flush(); } } } catch (Exception e) { e.printStackTrace(); } }
-
文件是存在对象存储 MinIO 上面的,这里是视频文件,前端页面需要播放。
Java后端开发一个文件下载接口,这里没有直接提供minio的地址。问题是前端播放器播放视频的时候,会把整个视频下载完毕,播放也不能拖拽播放,只能从头到尾顺序播放。
用户体验很差 -
这都3年没更新了,换个吧
-
哪儿报错,你得先说清楚啊。
-
不懂编程的话,那是挺难的
-
直接用开源的cms做吧,关键词 wordpress
-
这我遇到过。参考这个链接
https://github.com/microsoft/WSL/issues/4299
https://utf9k.net/blog/wsl2-vhd-issue/进入 C:\Users{你的用户名}\AppData\Local\Packages,你安装的wsl就放在这个目录下,然后找到文件夹名匹配你安装的操作系统,比如我的是
CanonicalGroupLimited.Ubuntu22.04LTS_79rhkp1fndgsc
,然后右键高级,选择,把压缩内容以便节约磁盘空间 勾去掉,就解决了!! -
还不跑路,等着干嘛
-
https://github.com/community/community/discussions/31644
Heads up! This Trending tab is being deprecated. Due to low usage of Trending Repositories and Trending Developers, this tab will no longer be available beginning September 30, 2022.
求助、制作一个自动流程
vcpkg 下载慢问题
学习django出现了问题,大佬快来!拜托了!
高价租用github账号留下GitHub账号名,我出价格
tailwind base默认样式怎么移除
求fancyss hnd v8 离线包 自己下载不了 ,x谢谢大神了
Spring 大文件下载(前端视频播放)优化
Spring 大文件下载(前端视频播放)优化
Spring 大文件下载(前端视频播放)优化
专门支持上ChatGPT的TZ网站在这里
有大佬会cloudsim吗?求分享经验
我是小菜鸡一个 求大神改一下错误,感谢
如何正确使用他人文件
求个做网站的大佬
输出结果如何保留小数点后三位
升级wsl2 安装ubuntu报错
小白前端菜菜,求带
Github 将关闭Trending趋势