Oha Api
ohayo apihttps://api.oha.li
圖像Api beta
https://api.oha.li/img/? : Get
| 查詢符 | 參數 | 描述|
| - | - | - |
| type | desktop | 顯示一個適合桌面端顯示的圖像。|
| type |mobile | 顯示一個適合移動端顯示的圖像。|
| type |sticker| 顯示一個貼紙或適合作爲圖標或頭像的圖像。|
| type | log | 以JSON格式顯示該使用者最近隨機的圖像完整url,可透過該url下載。|
| type | meta | 以JSON格式顯示本次查詢的內容Meta資訊。包括隨機的圖像鏈接、限制的大小、實際大小、是否超過了限制和本次顯示的類型。
| size | 大小 + b、kb、mb、gb ,默認byte| 限制顯示的圖像大小,如果多次未查找到適合圖像則會忽略限制。因此應避免極端大小。無參與參數錯誤會忽略限制。|
| none | none | 無參或參數錯誤,默認顯示自適應圖像(透過UA判斷)。|
type查詢符可使用半角逗號,組合,log優先級高於其餘。
每張圖像都經過我精心篩選,幾乎都經過我的個人挑選,其大部分來自我關注的50餘位繪師。
除此之外,如有遇到中意的也會着手添加,當然也可以向我推薦。
已調用次數:
預覽
批量下載或取得縮略圖:
Images (onedrive),密碼:NikoLove。
使用範例
您可以在任何需要顯示圖像的地方使用它,如用於背景圖像鏈接。
顯示一個適合桌面端的圖像,且期望圖像大小小於2MB:
https://api.oha.li/img/?type=desktop&size=2mb隨機顯示移動與桌面端的圖像:
https://api.oha.li/img/?type=mobile,desktop透過Css設定背景圖像:
<style>
body {
background-image: url('https://api.oha.li/img/?type=desktop&size=2mb');
background-size: cover;
background-repeat: no-repeat;
}
<style>如果在同一頁中多次請求完整相同的url,可能會返回相同的圖像。
可以添加亂數查詢符或時間戳以避免,以及隨機字串。
透過html + js`避免顯示同一圖像`範例:
<img id="myImg" src="" alt="loading..">
<script>
var imgUrl = 'https://api.oha.li/img/?type=desktop';
function generateRandomString(length) {
const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
let result = '';
const charactersLength = characters.length;
for (let i = 0; i < length; i++) {
result += characters.charAt(Math.floor(Math.random() * charactersLength));
}
return result;
}
imgUrl += '&' + generateRandomString(10);
//設定圖像容器來源爲新的鏈接
document.getElementById('myImg').src = imgUrl;
</script>日誌
https://api.oha.li/img/?type=log
將返回該使用者最近隨機的圖像完整url,範例:
[
"https://data.oha.li/img/desktop%2Fmw8qvvvs.png",
"https://data.oha.li/img/desktop%2F74433985_4.jpg",
"https://data.oha.li/img/desktop%2F81672161_1.jpg",
"https://data.oha.li/img/desktop%2F94049971.jpg"
...
]透過該url,您可以直接從源下載圖像。
Meta
https://api.oha.li/img/?type=meta,desktop
返回本次查詢的元資訊,返回範例:
{
"imageUrl":"https://data.oha.li/img/desktop/93921212.jpg",
"limitSize":0, //bytes
"concreteSize":835217, //bytes
"overtakeRandLimit":false,
"typs":[
"desktop"
//...
]
}| 鍵 | 值 | 描述 |
| - |- |- |
| imageUrl | Url | 本次隨機的圖像鏈接 |
| limitSize | Int | 限制的圖像大小(bytes),0則爲無限制。 |
| concreteSize | Int | 本次圖像的大小(bytes)。|
| overtakeRandLimit | Bool | 隨機達到限制了嗎? 爲布林值 |
| types | array(值爲string) | 本次顯示的圖像類型,可爲空。|
速度
視圖像大小,全球平均加載時間1.3S,除中國大陸晚間較慢。詳見:
美國:
Tokyo:
Hongkong:
音樂Api beta
https://api.oha.li/music/? : Get
| 查詢符 |參數 |描述 |
| - | - | - |
| action| rand | 隨機取得一首音樂。|
| none | none | 音樂播放器主頁。|
在線聆聽jay chou 無損音樂和更多!
下載Musics (onedrive),密碼:NikoLove。
更新記錄
更新記錄-2025/01/26
- 2025/01/26 新增了顯示查詢Meta資訊功能,修復size限制可能不起用的問題。
- 2025/01/10/ 進一步優化了速率,現在使用非阻塞方式執行所有IO。
- 2025/01/09/ 新增默認透過UA顯示自適應圖像,新增多選圖像類型的功能。
- 2025/01/07 更新了圖庫,現在擁有4000+精挑細選的圖像
(實際上爬了15G多,因爲最低一個存儲空間的伺服器不夠部署,就閹割了)。
優化計數功能及log以JSON格式顯示,除此之外還增加了限制圖像大小的功能。 - 2025/01/01 爲圖像api新增了調用計數功能。
我正在考慮使用重定向的方式隨機圖像,而非直接輸出,這樣可以將圖像靜態部署並提高訪問速率與Api效率。
大陸優化?
當然! 計劃透過其他雲端服務或CDN建立專用線路,以避免CloudFlare在中國大陸表現不佳的情況。
後續將會持續更新,如果有任何Ideas歡迎隨時聯絡!😘
Niko Love~ 💕💕💕
你好呀~ 看到留言訊息裏的 ⌈O2⌋可能是拼寫錯誤,故維持了原始網域並更新了頭像路徑 如有誤可再留言變更~
您好,麻烦更新一下我的站点信息,谢谢~ Name: Ethan Desc: Don’t stay awake for too long. Link: https://hanlifeO2.com Avatar: https://hanlifeO2.com/avatar.svg
嗨~ 朋友你好呀,已經加上咯~