代码

Picgo上传到GitHub报错,可怜我只能借助搜索引擎,但别人却动手换了个方法自己搞。
直接上代码吧

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<script src="https://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
<script>
function uploadimg(file){
var timestamp=new Date().getTime();
var nameofimg=timestamp+"."+houzhui;
var picurl="https://cdn.jsdelivr.net/gh/lihua/lihuasimg@master/"+nameofimg;
var settings = {
"url": "https://api.github.com/repos/lihua/lihuasimg/contents/"+nameofimg,
"method": "PUT",
"timeout": 0,
"headers": {
"Authorization": "Bearer lihuaskey",
"Content-Type": "text/plain"
},
"data": "{\r\n \"message\": \"upload\",\r\n \"content\": \""+ file +"\"\r\n}",
};
$.ajax(settings).done(function (response) {
imgurlmd="![]("+picurl+")";
url=""+picurl;
my="{% gallery %} ![]("+picurl+") {% endgallery %}";
var final="<li>"+imgurlmd+"</li>"+"<li>"+url+"</li>"+"<li>"+my+"</li>";
document.getElementById("neirong").innerHTML=final;
});
}
function imgChange(img) {
const reader = new FileReader();
reader.onload = function (ev) {
var imgFile =ev.target.result;
base64url=imgFile.replace(/(.*)?,/,'');

houzhui = imgFile.substring( imgFile.indexOf("/") + 1, imgFile.indexOf(";") );
uploadimg(base64url);
}
reader.readAsDataURL(img.files[0]);
}
</script>
<div style="font-size: 30px;display: inline; cursor: pointer" onclick="myimg.click()">🚢</div>
<div id="neirong"></div>
<input type="file" id="myimg" onchange="imgChange(this)" style="visibility: hidden;" accept="image/png,image/gif,image/jpg,image/jpeg">

使用

新建一个index.html文件,复制上方代码,修改后用浏览器打开
我们要修改三处
lihua改为你的github用户名
lihuasimg改为仓库名
lihuaskey改为你的github token,token的获得可参考GitHub图床配置

参考

Picgo上传到GitHub莫名其妙的出错后,我选择自己实现上传功能