【vps】教你写一个自己的随机图API
【vps】教你寫一個自己的隨機圖API
前言
剛剛開始使用halo博客的時候,我就發現halo博客系統是可以使用隨機圖當背景的,所以也是使用了網上一些比較火的隨機圖API。
在上次發現了各種圖片API接口之后,我發現這些接口都是使用隨機圖的原理的,然后大部分的隨機圖都是二次元濃度過高,自己是有點受不了的,所以準備自己寫一個隨機圖的API接口。正好最近的vps備案成功了,就寫一個API網頁吧。
1、尋找圖片
這一步肯定是不用多說的,自己就是因為嫌棄以前使用的api二次元濃度太高了,所以想自己找一些好看的圖片來當隨機圖。那么從哪里找圖片呢?我這里有幾個推薦的好看的壁紙網站,都是免費下載的
Wallpaper Abyss
Awesome Wallpapers
WallpapersWide.com
當然,還有很多的地方可以找到好看的圖片,就比如我最近刷短視頻的時候,就會經常給我推薦好看的壁紙
2、壓縮圖片
我們都知道,如果一張圖片的大小太大,那么網頁打開時加載時間就會比較長,這個樣子就會有網頁打開了,但是圖片未加載完全的情況出現。
那么如何避免這種情況的出現呢,我們可以使用一些圖片壓縮工具,這里推薦使用在線的圖片壓縮網站TinyPNG
這個網站的壓縮率非常的高,使用的圖片壓縮算法基本上可以達到70%左右的壓縮了,這已經是高得離譜了。
3、上傳圖片
在壓縮圖片完成之后,就到了我們的上傳圖片的時間了
然后我上傳圖片使用的是github+jsdelivr圖床來上傳的。
最后的上傳效果就是圖片地址為
https://cdn.jsdelivr.net/gh/{你的github用戶名}/{倉庫名稱}/{具體路徑}
那么這邊使用的圖床插件是PicGo,配置好之后的樣子長這樣
那么上傳圖片的問題解決了
4、創建API
api怎么創建呢?
首先第一步,我們打開vps的寶塔面板,如果沒安裝的推薦安裝一個,因為這個對建站小白來說非常的方便。
我們參加一個API站點
然后申請一個ssl認證,再打開強制https
然后打開這個站點的目錄,創建一個img.txt和一個random.php
我們在img.txt中將我們上傳的圖片的url寫在里面,效果如圖所示
這里提一點,如何一件復制你上傳圖片的url呢,如果你使用的是PicGo上傳的話,可以在“相冊”一欄里,選擇你想要的圖片,然后一件復制url
然后我們在random.php中寫下這段代碼
<?php //存有image鏈接的文件名img.txt $filename = "img.txt"; if(!file_exists($filename)){die('文件不存在'); }//從文本獲取鏈接 $pics = []; $fs = fopen($filename, "r"); while(!feof($fs)){$line=trim(fgets($fs));if($line!=''){array_push($pics, $line);} }//從數組隨機獲取鏈接 $pic = $pics[array_rand($pics)];//返回指定格式 $type=$_GET['type']; switch($type){//JSON返回 case 'json':header('Content-type:text/json');die(json_encode(['pic'=>$pic]));default:die(header("Location: $pic")); } ?>到此大功告成!我們的隨機圖API就做好了!
我們只需要訪問這個API鏈接(random.php)就可以立即跳轉到我們img.txt中的隨機一張圖片的地址啦!
后話
那么到此自己的隨機圖API就做好啦
這里也是附上自己的隨機圖API接口
api.woodwhale.top
總結
以上是生活随笔為你收集整理的【vps】教你写一个自己的随机图API的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Spring mvc 原理浅析
- 下一篇: 汇编语言XLAT查表法