Theme——借助github的API来实现主题自动更新

简介: Theme——借助github的API来实现主题自动更新

前言

那么借助的是那个api呢?这里是为了方便测试,使用的是tags,如果是正式的那么应该使用releases

内容

侧边公告栏

测试环境

<script>
async function request(url = '', method = 'GET', data = {}, headers = {}) {
    let options = {
        method: method,
        mode: 'cors',
        redirect: 'follow',
        referrerPolicy: 'no-referrer',
    }
    if (Object.keys(headers).length) {
        options.headers = headers
    }
    if (Object.keys(data).length) {
        options.body = JSON.stringify(data)
    }
    const response = await fetch(url, options)
    return response.json()
}
 request('https://api.github.com/repos/wangyang0210/cnblogs-theme/tags').then(r => {
        const url = `https://cdn.jsdelivr.net/gh/wangyang0210/cnblogs-theme@${r[0].name}/dist/simple-memory.js`;
         $.ajax({
            type: 'GET',
            dataType: 'script',
            cache: true,
            url,
            success: function (data) {
               console.log('simple-memory request success')
            },
            error: function (err) {
                console.log('simple-memory request', err)
            },
        })
    })
</script>

正式环境

<script>
async function request(url = '', method = 'GET', data = {}, headers = {}) {
    let options = {
        method: method,
        mode: 'cors',
        redirect: 'follow',
        referrerPolicy: 'no-referrer',
    }
    if (Object.keys(headers).length) {
        options.headers = headers
    }
    if (Object.keys(data).length) {
        options.body = JSON.stringify(data)
    }
    const response = await fetch(url, options)
    return response.json()
}
 request('https://api.github.com/repos/wangyang0210/cnblogs-theme/releases/latest').then(r => {
        const url = `https://npm.elemecdn.com/cnblogs-theme@${r.tag_name}/dist/simple-memory.js`;
         $.ajax({
            type: 'GET',
            dataType: 'script',
            cache: true,
            url,
            success: function (data) {
               console.log('simple-memory request success')
            },
            error: function (err) {
                console.log('simple-memory request', err)
            },
        })
    })
</script>

学无止境,谦卑而行.

目录
相关文章
|
2月前
|
数据采集 开发工具 图形学
Demo发布 | ClkLog成功集成Unity3D
在Clklog完成 React Native 和 uni-app 集成 Demo 后,一个游戏行业新客户提出了使用 Unity3D 开发的集成问题。对此,我们与客户分别进行了测试。 客户使用神策Andriod原生SDK在Android 端暴露接口给 Unity3D的方式,验证了使用ClkLog进行数据采集的可行性。
73 12
|
6月前
|
数据采集 JSON 小程序
零成本 API 服务搭建,用 GitHub Actions 自动爬取文章?
本着将成本降到最低,我目前做的应用或小程序都是单机的,也就是不用请求接口,只要一上架就没有任何支出。但是写死的数据毕竟有限,应用的内容单一无法紧跟时事热点,每次打开一个样,自然就没有留存。遇到有错字啥还要更新版本,那有没有方法既能丰富应用内容,又不用增加成本呢?
56 0
|
6月前
|
开发工具 git
根据使用者反馈,对开源项目 go-gin-api 新增两个功能
根据使用者反馈,对开源项目 go-gin-api 新增两个功能
41 0
|
8月前
|
前端开发 JavaScript API
2024 Web 新特性 - 使用 Popover API 创建弹窗
Popover API简化了Web弹窗创建,标准化处理在所有主要浏览器中可用。它提供声明式创建弹出式菜单、提示和信息卡片,解决代码冗余和兼容性问题。弹窗自动定位在顶层,支持通过Esc键或点击外部关闭,且与触发元素语义关联。基础用法涉及`popover`和`popovertarget`属性。
115 0
|
数据可视化 测试技术 API
Modelscope Agent实操(三):将API注册为tool,成为smart API,方便社区开发者调用
大家通过写python代码的方式来定制自己的tool,进一步扩展Agent的能力。
|
9月前
|
存储 JSON 数据可视化
API入门项目项目收集GitHub上热门项目的信息
API是网站的一部分,在学术领域中常用于获取数据信息。如果我们想要获取某个网站上的一些信息,可以使用API请求数据,然后对这些数据进行处理和可视化,以便更好地理解和分析数据。
149 0
|
JSON JavaScript 前端开发
JQuery常用API(未完,持续更新)
JQuery常用API(未完,持续更新)
JQuery常用API(未完,持续更新)
|
API 开发者
又又又一个小更新,主题插件上线! 开源 API 管理工具更有意思
近日 Postcat 终于上新了用户期待已久的 12 款【主题插件】!喵喵我啊,想着这下再也没有哪位用户老爷会吐槽 我们 Postcat 的主题过于简洁吧!
又又又一个小更新,主题插件上线! 开源 API 管理工具更有意思
|
前端开发 API
前端知识学习案例-Clipboard API一键复制和一键粘贴功能
前端知识学习案例-Clipboard API一键复制和一键粘贴功能
105 0
前端知识学习案例-Clipboard API一键复制和一键粘贴功能
|
前端开发 API
react实战笔记24:三个api之二原生创建2注意点
react实战笔记24:三个api之二原生创建2注意点
130 0
react实战笔记24:三个api之二原生创建2注意点

热门文章

最新文章