PHP轉Go系列 | ThinkPHP與Gin框架之OpenApi授權設計實踐
大家好,我是碼農先森。 我之前待過一個做 ToB 業務的公司,主要是研發以會員為中心的 SaaS 平台,其中涉及的子系統有會員系統、積分系統、營銷系統等。在這個 SaaS 平台中有一個重要的角色「租户」,這個租户可以擁有一個或多個子系統的使用權限,此外租户還可以使用平台所提供的開放 API 「即 OpenApi」來獲取相關係統的數據。有了 OpenApi 租户可以更便捷的與租户自有系統進行打通,提
昵称 碼農先森
贡献者77
粉丝0
大家好,我是碼農先森。 我之前待過一個做 ToB 業務的公司,主要是研發以會員為中心的 SaaS 平台,其中涉及的子系統有會員系統、積分系統、營銷系統等。在這個 SaaS 平台中有一個重要的角色「租户」,這個租户可以擁有一個或多個子系統的使用權限,此外租户還可以使用平台所提供的開放 API 「即 OpenApi」來獲取相關係統的數據。有了 OpenApi 租户可以更便捷的與租户自有系統進行打通,提
昵称 碼農先森
大家好,我是碼農先森。 在早些年前客户端想要實時獲取到最新消息,都是使用定時長輪詢的方式,不斷的從服務器上獲取數據,這種粗暴的騷操作實屬不雅。不過現如今我也還見有人還在一些場景下使用,比如在 PC 端掃描二維碼,然後使用長輪詢的方式從服務端獲取最新的掃碼信息,來判斷用户是否已經掃碼完成,諸如這種場景還有不少。其實大家都知道長輪詢的方式不好,那為什麼還有人使用呢? 我想最直接的原因就是「開發起來簡
昵称 碼農先森
前言 曉傑利用ALists創建了個網盤資源站,想着如何增加個動態驗證碼進行驗證後才能進行訪問下載,剛開始利用了固定的驗證碼,用户可以通過JS代碼中進行繞過或直接拿到驗證碼,經過曉傑多次優化,最終版本支持動態獲取驗證碼,使用了禁止打開控制枱校驗等方式減少繞過幾率,現在分享給大家。 AList介紹 AList是一個支持多種存儲、支持網頁瀏覽和WebDAV的文件列表程序,AList的功能包括但不限於
昵称 Soujer
大家好,我是碼農先森。 我們在某寶或某多多上搶購商品時,如果只是下了訂單但沒有進行實際的支付,那在訂單頁面會有一個支付倒計時,要是過了這個時間點那麼訂單便會自動取消。在這樣的業務場景中,一般情況下就會使用到延時隊列。 通常在客户下單之後,就會將訂單數據推送到延時隊列中並且會對該消息設置一個延時時長,比如設置五分鐘、十分鐘、或十五分鐘等,具體的時長應該還是要結合當前的業務進行衡量,然後消費端會在指定
昵称 碼農先森
thinkphp中我們常通過使用關聯預載入(Eager Loading)來解決關聯查詢中"N+1 查詢問題", 通過減少數據庫查詢次數來提升性能. 其底層實現邏輯可以分為以下幾個關鍵步驟: 1.關聯定義的基礎 以下面的代理為例子: //$this-model = new \app\admin\model\device\Relation; $list = $this-model -wher
昵称 daoheng
做後端開發的你,是不是也被 “權限管理” 搞得頭大? 寫接口時,要反覆判斷 “用户有沒有訪問權限”“角色能不能操作這個資源”;改需求時,加一個新權限就要改一堆代碼,還容易漏判、錯判;對接不同項目時,權限邏輯又要重新寫一遍,重複勞動沒完沒了…… 這裏給大家推薦的 Think-authz,就是專門為解決權限管理痛點而生的 “神器”—— 基於 RBAC 模型,支持多種權限規則,還能無縫對接 ThinkP
昵称 JonLee
在項目裏寫接口的時候,我有時候會希望再多一層保護。 雖然 HTTPS 已經能保證傳輸安全,但它解決的更多是「傳輸過程中不被竊聽/篡改」的問題。 而我還想順帶做到幾點: 防止接口被隨便模擬調用 就算數據包被截獲,也看不懂內容 就算有人拿着同一份請求去重放,服務端也能拒絕 這些需求其實挺常見的,但並不複雜,説白了就是一套 RSA+AES 混合加密。 經典的思路 原理本身沒什麼新
昵称 蘇琢玉
本文基於“體育即時比分系統”的實際開發經驗總結,僅供技術交流。該系統在實現過程中,主要解決了實時比分更新、賠率數據同步、賽事分析展示等關鍵問題,並採用了以下技術棧: 後端:PHP(ThinkPHP 框架) 安卓端:Java iOS端:Objective-C PC/H5 前端:Vue.js 其中,比分分析頁面聚焦於展示比賽雙方的近期戰績、比賽賠率、關鍵數據分析等信息,結合 WebS
昵称 東莞夢幻網絡科技
如下圖所示,'240610708' 和 'QNKCDZO' 是兩個完全不同的字符串,它們的 MD5 哈希值自然也不相同。可為什麼明明不同,PHP 還會認為這兩個哈希值相等呢?更離譜的是,從 2004 年底的 PHP 4.3.10 版本開始,這個“問題”至今一直存在,所有後續版本都會認為它們是相等的! 難道是 PHP 又出 bug 了?還是這背後另有隱情?讓我們一探究竟! 這看起來的確像是 PHP
昵称 da_miao_zi
問題背景 最近在做瓶體回收設備改成沒有顯示大屏, 設備與服務器通過MQTT協議進行通信的方式, 服務器後台訂閲了所有設備的發佈頻道"device/+/publish", 這樣後台就能收到給所有設備發佈的消息, 進而進行邏輯處理. 問題表現 小程序用户掃碼設備上的二維碼與設備綁定後, 後台會更新redis中對應設備的緩存信息設置is_bind=1,uid=綁定用户id, 標記當前設備已經與某個用户綁
昵称 daoheng
📊 流行語言面向對象特性對比 排名 語言 OOP範式 類 繼承 封裝 多態 接口/協議 特色功能 1 Python 多範式支持OOP ✅ 多繼承 命名約定 鴨子類型 抽象基類 Mixins, 裝飾器 2 C 過程式 ❌
昵称 木子君_求贊
laravel 代碼混淆 1. 下載yakpro-po最新版 https://github.com/pk-fr/yakpro-po 2. 解壓 unzip yakpro-po.zip -d /usr/local/ 3.給yakpro-po.php添加執行權限 cd /usr/local/yakpro-po chmod a+x yakpro-po.php 4.下載PHP-Parser4.x並解壓
昵称 老段
我本人使用的是 Windows 操作系統,涉及到的軟件安裝也是在 Windows 操作系統上。 感覺 Windows 使用 WSL 安裝 Linux 虛擬機,然後搭建開發環境,挺好用。 使用 WSL 在 Windows 上安裝 Linux 在 https://github.com/laravel/homestead 下載壓縮包。 這裏是為了使用 homestead/bin/wsl-init 腳本。
昵称 8ug_icu
laravel 中實現註解注入 創建註解類 ?php declare(strict_types=1); namespace App\Support\Attributes; #[\Attribute(\Attribute::TARGET_PROPERTY)] readonly class Injection { public function __construct(
昵称 guanguans
laravel-api-response - 規範化和標準化 Laravel API 響應數據結構 laravel-api-response - 規範化和標準化 Laravel API 響應數據結構。 源碼 guanguans/laravel-api-response 功能 支持自定義響應數據結構 支持 restful 接口響應(可選) 支持自動處理 api 異常 支持本地化消息 支持
昵称 guanguans
PHP在2025年不僅蓬勃發展,更成為了現代Web開發不可或缺的中堅力量。從高性能應用到雲原生架構,甚至serverless領域,PHP早已超越了傳統的網頁開發,完美契合現代開發的需求。PHP 8.x的發佈,為其注入了JIT編譯器、Fibers、以及一系列現代語言特性,不僅增強了其競爭力,更提升了其可擴展性、效率和處理複雜應用的潛力。 PHP的韌性和適應性使其在新老開發者羣體中始終保持着強大的吸引
昵称 kip
馬上使用簡單、高效的 PHP 集成開發環境!https://x-server.ltd 1.4.2之前,mysql、nginx 、redis、php 等服務,只能開啓或者關閉服務。當某些情況下(比如修改了配置文件)需要重啓服務的時候,關閉、打開操作就變得有些麻煩。 Xserver 始終將服務搭建簡單化和操作簡單化作為產品核心特性,所以在 1.4.3 版本中主要給大家提供了所有服務一鍵重啓的功能。操作
昵称 yanwushu
距離上次更新(2024-11-10) 4 天之後,今天給大家帶來 1.4.4的更新。 🎉 支持 localhost 域名。之前的版本只支持 test.com 這種類型的域名,現在我們添加了 localhost 域名的支持。 🎉 支持域名後自定義端口號。之前的版本只支持 test.com 這種類型的域名,現在我們添加了 localhost:8080、test.com:81 這種域名的支持。 🎉
昵称 yanwushu
距離上次更新(2024-11-14) 7 天之後,今天給大家帶來Xserver 1.4.5的更新。 近期接到不少用户反饋,大家對 swoole 的需求還是比較多的。所以就提前實現 swoole 擴展的支持。 swoole 是一個高性能的基於協程的引擎,用來構建高性能系統。 有了 swoole 擴展的加持,Xserver可以為大家提供更加強大的環境支持。讓你在快速構建系統的路上一往無前! 本次更新為
昵称 yanwushu
距離上次更新(2024-11-21) 5 天之後,今天給大家帶來 1.4.6 的更新。 本次更新為大家帶來更加貼心的引導性功能。 好的軟件應該是一個有服務意識的服務員。總在你需要的時給你適當的建議。按照服務員的指導建議,快捷的達到使用者的目的。 Xserver的開發理念就是簡單、靈活、服務用户。所以在這個理念的指導下我們升級了以下功能,變動雖然很小,但是在工作場景中將大大提升你的生產力。 當 Ng
昵称 yanwushu
Laravel 多態關聯的模型本地化套用 前言 在項目中,一般情況下,我們可以使用單個字段來創建一個一對一或者一對多關聯,比如一個 User 有多個 Post。 而除了這些,我們偶爾會遇到一些關聯關係除了需要根據 ID 進行關聯外,還可能需要根據不同的 Type 去關聯不同的模型,而這,就是多態關聯。 在 Laravel 中,為我們提供了開箱即用的多態關聯。 準備環境 軟件
昵称 唯一丶
優先級模型,所謂優先級,是指按一定的順序加載策略。 優先級高的策略先加載,先加載的策略具有較高的優先級。 PHP-Casbin 目前支持三種模式:隱式優先順序加載策略、顯示優先順序加載策略、基於角色和用户的層級關係加載策略。 優先級模式的配置在model.conf中的policy_effect中配置。 隱式優先順序加載策略 隱式優先級模型配置在官方倉庫的 examples 目錄下 priority
昵称 JonLee
PHP 老司機的自白 各位 PHPer 老鐵們!咱們寫 PHP 那叫一個"隨心所欲"——變量想變就變,類型説轉就轉,Laravel 框架一搭,Artisan 命令一敲,項目就像變魔術一樣"噌"地就上線了!是不是覺得自己就是代碼界的哈利波特?🧙 但是當你的網站訪問量像坐火箭一樣飆升,或者老闆突然要搞微服務架構時,是不是發現 PHP 有點"力不從心"了?這時候 Go 語言這個"性能怪獸"就開始對你拋
昵称 gvison
今天做一篇 laravel-octane 以 frankenphp 作為服務引擎的體驗及性能壓測。硬件配置與前2篇的相同,環境為 php8.3 + laraval12 + mysql8.4(版本不必太在意,=php8, =laravel8, =mysql7 區別都不大)。 測試基礎硬件 先説結果,非常ok:cpu 密集型 場景最優 3.5k 的qps;io 密集型 場景最優 2k 的 qp
昵称 big_cat