利用码云OpenApi搭建图床

因为自建博客需要图片服务器,考虑到用本机的图片服务器需要考虑数据备份链接路径等一系列问题,还是推荐使用第三方的服务

当前各个主要平台的oss服务,有免费的有收费的,这里就不多说,毕竟个人的理解不一样

本文只讨论使用码云搭建第三方图床的问题,好了,开始使用码云搭建图床的具体操作

在码云上建一个空的远程仓库,然后建一个空的文件夹

这里有几点建议

  • 不要轻易修改仓库的名字和文件夹的名字
  • 注意命名规范简洁,有点强迫症不好意思,丑的链接接受不了

最终的路径像这样,当然你要图片链接更加简洁使用根目录当我没说
https://gitee.com/iMist/res/tree/master/upload_images

然后点击上传文件,进入上传页面,上传一张图片,这个就是我们以后会使用的图床界面

其实这个时候可以使用码云库的链接访问了,如果你的库是public

你的链接类似这样https://gitee.com/iMist/res/raw/master/upload_images/img_gitee_pages.png

注意:图片链接需要将blob替换成raw,才是图片的永久链接

其实这个路径可以用在博客中了,路径还算简短,但是到此为止,就太没有意思了,你用接口测试工具访问一下这个图片,每次都在几百毫秒左右,我用wordpress本来就放弃了
一部分的速度要求,现在还搞这么慢,不能忍

方式二:利用码云提供的Gitee Pages搭建静态页面服务

这个可以用来搭建静态博客hexo等,但是我们是要来搭建图床的

点击Gitee Pages,将当前分支一般是master分支作为部署的分支,选择根目录(不填就行了代表整个仓库),然后点击启动就开始部署了

部署完成就可以访问之前上传的测试图片,地址像这样https://imist.gitee.io/res/upload_images/img_gitee_pages.png

保留上传链接作为快捷图床服务

https://gitee.com/iMist/res/upload/master/upload_images
以后就可以快速打开图床了,接口测试工据测试一下,缓存生效了,速度很快,适合静态资源的保存

写在最后,这种方式有点不好的就是每次都要重新部署一下服务才能访问图片,要掏钱才能推送立刻部署

方式三:通过码云OpenAPI自行搭建图床(推荐)

前面两种方法相当简单,但是比较low,都免费了还方便使用git管理,管他呢,现在推荐第三种方式通过码云openapi编写代码实现上传图片并且返回url html以及markdown格式的链接
首先
首先了解一下码云的OpenApi
码云OpenApi文档

点击仓库->新建文件接口文档

好的,我们现在看一下文件上传接口规范

这里特意提一下access_token 这个参数就是码云OpenApi私人令牌,可以直接在申请,但是申请的令牌只有一天的有效期,这显然不是我们需要的
,图片需要base64编码(暗示不可以上传大图),接口请求参考如下

上传图片响应

再来介绍第二个接口,这里直接通过接口测试工具展示了,比较需要注意的是登录账号是绑定的邮箱号(POST请求,Content-Type: application/x-www-form-urlencoded ) ,client_secretclient_id需要创建第三方应用获取,scope代表授权项,空格隔开

curl -X POST --data-urlencode "grant_type=password" --data-urlencode "username={email}" --data-urlencode "password={password}" --data-urlencode "client_id={client_id}" --data-urlencode "client_secret={client_secret}" --data-urlencode "scope=projects user_info issues notes" https://gitee.com/oauth/token


密码登录响应

第三个接口是当 access_token 过期后(有效期为一天),你可以通过以下 refresh_token 方式重新获取 access_token( POST请求 ),请求响应和第二个登录接口响应一致
https://gitee.com/oauth/token?grant_type=refresh_token&refresh_token={refresh_token}

了解完这些就直接编写代码就可以了,这里我不清楚可不可以用部署的静态页面通过代码上传,没有测试过,但是我是部署了一个轻量级服务来实现的,代码这里就不发了,就是调用一下接口就行了,比较简单,看一下最终的效果(我写的页面比较low,没有润色打磨,毕竟是自己用的将就看一下)

小确幸

每一丝灵感都值得被记录,每一笔记录都是成长,每一点成长都值得欢呼

博主个人站: www.imisty.cn
CSDN博客: https://blog.csdn.net/lookinthefog
博客园 :https://imist.cnblogs.com/

希望能够认识一些热爱技术的小伙伴,欢迎友链接哟

原文地址:https://www.cnblogs.com/imist/p/11417582.html

时间: 2024-07-29 21:05:36

利用码云OpenApi搭建图床的相关文章

利用PicGo、GitHub和jsDelivr搭建图床

一个高速稳定的图床对于每一个写博客的人来说都很重要,之前大部分人的选择可能都是利用微博搭建图床,但是从2019年4月开始微博开启了防盗链,导致所有依赖微博图床的图片全部无法显示. 利用PicGo将图片上传到GitHub仓库,再使用jsDelivr优化对于我们来说会是一个不错的选择. 准备 PicGo PicGo在GitHub上提供了MacOS.Linux.Windows三个系统版本的下载 一个用来存放图片的GitHub仓库 具体步骤 新建一个GItHub仓库 生成Token github--se

CentOS 利用docker 搭建图床

CentOS 利用docker 搭建图床 安装docker:yum install docker 启动docker:systemctl start docker,可以设置一下开机启动:systemctl enable docker 拉取一个镜像:docker image pull kdelfour/lychee-docker 启动镜像:docker run -it -d -p 5120:80 kdelfour/lychee-docker [端口映射:浏览器默认的 80 端口,图床可以改成其他端口

自建免费图床, 免费资源利用 onedriver api 自建图床

免费图床, 都推荐的比较稳定的 推荐看 这里, 已经总结了 免费图床点这里 用别人的不放心, 对接api 不灵活, 自己需求主要也是做站 提供一个思路, 使用onedriver 或 google driver api 自建免费图床 cocook免费图床 要求, 当然要回简单的编码, 是什么语言无所谓 有服务器, 最基础配置就行了 看懂 oneDriver api, 现在老的api授权已经不好用, 推荐直接用最新的 建立 注册clintid 地址 注册点这里 api 地址, 主要是 授权(使用au

Gitee 码云 pages 搭建vue项目记录

首先要在.gitignore文件去掉/dist,这个文件默认是不上传的,但是执行打包bulid的时候会生成dist文件,而线上访问的是打包之后的dist文件: vue.config.js文件,如下图箭头那个要改为项目文件名称 点进pages 部署目录要填写dist,然后点击启动就可以生成网址地址啦 原文地址:https://www.cnblogs.com/huanghuali/p/12275296.html

0基础搭建一套完整的图床系统

一.什么是图床图床一般是指储存图片的服务器,专门用来存放图片,当用到这些图片的时候,只需要复制这个图片的URL链接到你的代码,非常的方便,国内和国外都有图床系统供小站长使用.二.国内和国外都有哪些图床系统?国内: 1.外链吧有免费和收费的,100M 永久免费,收费相对便宜.不限外链.流量图片支持外链到所有网站.图片搬家.原图替换.水印.防盗链功能免费使用.2.又拍网付费外链,按流量和空间付费.价格比较贵3.巴比豆付费外链,价格和淘宝图片空间相同.4.幻域图床国内轻量级图床,采用国内cdn进行加速

使用Gitee搭建个人图床

使用Gitee搭建个人图床 一.前言 搭建个人的图床可以更加方便地管理个人图片,虽然Github也可以实现个人图床的搭建,但是,Github毕竟是外网,访问速度慢且不稳定.因此采用Gitee来搭建图床是个好选择. 二.创建仓库 第一步,在Gitee上创建一个仓库,用于存放图片: 三.建立联系 创建一个本地文件夹与刚才创建的远程仓库建立联系,可以采用以下两种方式: 第一种:将新创建的远程仓库克隆到本地文件夹中: git clone https://gitee.com/ahuntsun/BlogIm

使用Github 当作自己个人博客的图床

前提 本文前提: 我个人博客的草稿是存放在 github上的一个仓库 diarynote 截图存放的图片或者需要放在文章中图片,会固定存放在对应的文件夹中,我个人是使用日期文件夹,如: uploads/190828/test.jpg 本文中提到的这个仓库,都是指我自己的 diarynote 仓库 使用GitHub作为图床 从上面的描述可以知道,我自己的一个项目仓库的一个文件夹在 GitHub的 的路径固定是 https://github.com/wakasann/diarynote/tree/m

我的图床

图床 图床一般是指储存图片的服务器,有国内和国外之分.国外的图床由于有空间距离等因素决定访问速度很慢影响图片显示速度.国内也分为单线空间.多线空间和cdn加速三种. 就是专门用来存放图片,同时允许你把图片对外连接的网上空间,不少图床都是免费的. 我的图床 因为在制作随机图片的缘故,最近心血来潮想自己搭一个图床,尝试了好多图床之后(因为虚拟主机的速度不忍直视,每次装一个图床都要好长时间,用了两天时间才弄好),终于找到了一个还算说得过去的图床,上传方式和sm图床挺像的. 图床传送门 搭建图床的辛酸史

.NET CORE上传文件到码云仓库【搭建自己的图床】

.NET CORE上传文件到码云仓库[搭建自己的图床] 先建一个公共仓库(随意提交一个README文件或者.gitignore文件保证master分支的存在),然后到gitee的个人设置页面找到[私人令牌]菜单创建一个access_token.Gitee官方还友好的提供了基于swagger的API文档和调试页面: https://gitee.com/api/v5/swagger#/postV5ReposOwnerRepoContentsPath 搭建步骤 1.新建一个名为imagebed的仓库