解决自建不算子接入butterfly后一直转圈的问题

25 年 2 月 8 日 星期六 (已编辑)
224 字
2 分钟

原文:https://blog.liushen.fun/posts/e401be2d/

因为新版变量由原来busuanzi_page_pv → busuanzi_value_page_pv故js需要修改

api后端请改为自己的

javascript
! function() {
    let t = ["site_pv", "site_uv", "page_pv", "page_uv"],
        e = document.currentScript,
        a = e.hasAttribute("pjax"),
        n = e.getAttribute("data-api") || "https://busuanzi.butlanys.de/api",
        i = e.getAttribute("data-prefix") || "busuanzi",
        r = e.getAttribute("data-style") || "default",
        o = "bsz-id",
        s = () => {
            let e = new XMLHttpRequest;
            e.open("POST", n, !0);
            let a = localStorage.getItem(o);
            null != a && e.setRequestHeader("Authorization", "Bearer " + a), e.setRequestHeader("x-bsz-referer", window.location.href), e.onreadystatechange = function() {
                if (4 === e.readyState && 200 === e.status) {
                    let a = JSON.parse(e.responseText);
                    if (!0 === a.success) {
                        t.map((t => {
                            let elem = document.getElementById(`${i}_value_${t}`);
                            if (elem) {
                                elem.innerHTML = formatValue(a.data[t], r)
                            }
                            let n = document.getElementById(`${i}_container_${t}`);
                            if (n) {
                                n.style.display = "inline"
                            }
                        }));
                        let n = e.getResponseHeader("Set-Bsz-Identity");
                        null != n && "" != n && localStorage.setItem(o, n)
                    }
                }
            }, e.send()
        };

    function formatValue(t, e = "default") {
        if ("comma" === e) return t.toLocaleString();
        if ("short" === e) {
            const e = ["", "K", "M", "B", "T"];
            let a = Math.floor(Math.log10(t) / 3);
            return t /= Math.pow(1e3, a), `${Math.round(100*t)/100}${e[a]}`
        }
        return t.toString()
    }
    if (s(), a) {
        let t = window.history.pushState;
        window.history.pushState = function() {
            t.apply(this, arguments), s()
        }, window.addEventListener("popstate", (function(t) {
            s()
        }), !1)
    }
}();

文章标题:解决自建不算子接入butterfly后一直转圈的问题

文章作者:butlanys

文章链接:https://blog.butlanys.de/posts/33089[复制]

最后修改时间:


商业转载请联系站长获得授权,非商业转载请注明本文出处及文章链接,您可以自由地在任何媒体以任何形式复制和分发作品,也可以修改和创作,但是分发衍生作品时必须采用相同的许可协议。
本文采用CC BY-NC-SA 4.0进行许可。