所有分类
  • 所有分类
  • WordPress主题
  • WordPress插件
  • 发卡中心
  • 建站插件源码
  • 建站模版主题
  • 微信小程序
  • 手机Apps/Mobile
  • 游戏娱乐
  • 源码百宝箱
  • 站长工具箱
  • 知识分享
github在线图床源码

github在线图床源码

源码介绍 众所周知,GitHub的api灰常开放,如今已经有picog+github图床,但是,picog是桌面程序,怎样能用用一个网页程序来实现呢?其实很简单,我们就单纯用一个AJAX请求就可以了。 以下是一段简单的上传函数 function uploadimg(file, form) { // al...
资源下载
下载价格5来云币,VIP 8折、终身VIP免费,请先
仅学习交流,商用请买正版,一切后果由下载用户自行承担。若侵犯了您的权益,请来信通知Email: server@larjie.com。购买即默认同意我们的政策

源码介绍
众所周知,GitHub的api灰常开放,如今已经有picog+github图床,但是,picog是桌面程序,怎样能用用一个网页程序来实现呢?其实很简单,我们就单纯用一个AJAX请求就可以了。


以下是一段简单的上传函数

function uploadimg(file, form) {
            // alert(4)
            let timestamp = new Date().getTime(); //获取时间戳
            let newname = "https://raw.githubusercontent.com/你的用户名/仓库名/目录(留空代表根目录)/" + timestamp + "." + form; //以事件戳重命名
            console.log(newname);
            $.ajax({
                url: "https://api.github.com/repos/你的用户名/仓库名/目录(留空代表根目录)/" + timestamp + "." + form,
                method: "PUT",
                headers: {
                    "Authorization": "密钥,在github的个人 左侧的申请",
                    "Content-Type": "text/plain"
                },
                data: "{\r\n "message": "upload",\r\n "content": "" + file + ""\r\n}",
                success: function () {
                    console.log(111);
                    $("#neirong").html("github:" + newname) //写到html里面
                }
            })
        }

当然,图片上传时我们还要对图片进行重命名,避免重复图片,同时还要对图片转为base64编码

利用以下一段简单的函数实现

function imgChange(img) {
        const reader = new FileReader();
        reader.onload = function (ev) {
            var imgFile = ev.target.result; //imgFile就是图片的base64编码
            console.log(imgFile);
            base64url = imgFile.replace(/(.*)?,/, ''); //用正则消除前面的data之类的字符
            form = imgFile.substring(imgFile.indexOf("/") + 1, imgFile.indexOf(";")); //获取图片原本的格式
            console.log(imgFile);
            uploadimg(base64url, form); //上传
        }
        reader.readAsDataURL(img.files[0]);
    }

基本原理就是这样,还有个弊端就是纯html静态页面的形式会暴漏我们的密钥,所以我们可以把上传的部分单独做成一个php接口文件或者nodejs接口,这里就不提了

另外 秘钥在github登入自己账号后,右上角头像- Settings-左侧底部的Developer Settings-左侧的Personal access tokens-选择tokens-然后生成一个

资源下载
下载价格5 来云币
VIP 8折、终身VIP免费
仅学习交流,商用请买正版,一切后果由下载用户自行承担。若侵犯了您的权益,请来信通知Email: server@larjie.com。购买即默认同意我们的政策
原文链接:https://c.larjie.com/github-in-line-bed-source-code/,转载请注明出处。
0

站点公告

本站SVIP会员,限时优惠!无限下载、全部功能、专属客服、资源订制、悬赏任务、专享资源... 随着资源不断增多,每90天提价10%!升级VIP 免责声明 赚钱赚积分
显示验证码
没有账号?注册  忘记密码?