当前位置:首页 > H5 > 正文内容

js解压OSS数据,加速网站打开速度

高老师10个月前 (01-10)H5337

网站文章压缩储存OSS,请求地址使用鉴权地址,节省储存和带宽,文件也可以存放网盘,每100万个文章合并到1个文件即可。

代码例子

    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/pako/2.0.4/pako.min.js"></script>
    <script>
        $(document).ready(function () {
            $.ajax({
                url: 'https://59-47-225-42.pd1.cjjd19.com:30443/download-cdn.cjjd19.com/123-582/7c7a974f/1819092776-0/7c7a974f888e5709de800b9600f2e646/c-m67?v=5&t=1736562066&s=17365620665c838f06f98e16374ffef167248cdd95&r=0AMBDF&bzc=2&bzs=313831393039323737363a35323035323432313a35373930383434343935353a30&filename=1.mdb&x-mf-biz-cid=4ea854b3-4d0f-4449-a74a-4236ff5ee20f-47df1e&auto_redirect=0&cache_type=1&xmfcid=2952b5b4-12e1-4a91-9162-4cf9107650b1-0-50111d3b1',
                method: 'GET',
                headers: {
                    'Range': 'bytes=57908416664-57908444954' // 设置请求头,传递Range参数
                },
                xhrFields: {
                    responseType: 'arraybuffer'  // 设置为 arraybuffer
                },
                success: function (data) {
                    // 将 ArrayBuffer 转为 Uint8Array
                    const compressedData = new Uint8Array(data);

                    // 解压数据
                    const decompressedData = pako.inflate(compressedData, {to: 'string'});
                    console.log("Decompressed Data:", decompressedData);

                    // 转换为 JSON 对象
                    try {
                        const jsonData = JSON.parse(decompressedData.trim());
                        $('#post-Content').html(jsonData['content']);
                        console.log("Parsed JSON Data:", jsonData);
                    } catch (error) {
                        console.error("JSON Parsing Error:", error);
                    }
                },
                error: function (xhr, status, error) {
                    console.error("Error:", error);
                }
            });
        });
    </script>


扫描二维码推送至手机访问。

版权声明:本文由高久峰个人博客发布,如需转载请注明出处。

本文链接:https://blog.20230611.cn/post/874.html

分享给朋友:
返回列表

上一篇:刷题app题型界面前端设计备份

没有最新的文章了...

“js解压OSS数据,加速网站打开速度” 的相关文章

javascript停止定时器,	js删除定时器

javascript停止定时器, js删除定时器

    window.setInterval(method,time)方法本身会返回一个资源句柄,使用clearInterval(Intervalid)方法即可清除定时器<script> var num=0; //每隔1秒再控制台输...

Javascript绑定事件和移除事件

Javascript绑定事件和移除事件

<!DOCTYPE html> <html> <head> <title></title> <meta charset="utf-8"> </head> <body>...

js cookie操作,js获取cookie值的方法,js 设置cookie

js cookie操作,js获取cookie值的方法,js 设置cookie

维护老项目中客户提到一个页面中有6个表单以上,导致每次保存一个其他的数据全部丢失,自己比较懒没有全部更换为ajax.用户每次输入完成或者选择完成记录cookie,每次提交后加载页面完成初始化cookie即可。以下代码取自w3school比较完善,之前在其他博客使用的经常出现bug,这个比较推荐使用:...

 js构造函数

js构造函数

工厂模式虽然解决了创建多个对象的问题,但是并没有解决识别对象从属的问题.因为都属于object.因此出现了构造函数//构造函数名称首字母大写是规范 function Box(name,age){ this.name=name; this.age=age; this.run=funct...

 js对象冒充实现继承

js对象冒充实现继承

//构造函数 function Box(name,age){ this.name=name; this.age=age; this.run=function(){ return this.name+'--'+this.age; } } var&nbs...

高效服务器发送事件,服务器发送事件,服务器发送事件和长轮询的区别

高效服务器发送事件,服务器发送事件,服务器发送事件和长轮询的区别

HTML5 服务器发送事件(server-sent event)允许网页获得来自服务器的更新。通过官网的介绍可以看出是接收服务器发送数据,千万不能和ajax混淆,网上大片博文的介绍对其解读是错误的,导致让我差点觉得这个事件很鸡肋。先看通用案例:html5:<script type=&...