現有的解決方案
就目前而言,在 Laravel 上實現 JWT 主要有兩種解決方案:
注意:本文章所述之內容可能違反 FFXIV 官方使用條款而導致帳號被封鎖,請在確認自己瞭解風險的前提下再操作。
對於 FFXIV 這類劇本量龐大的 MMORPG,如果看不懂故事內容的話相當可惜。雖然有盛大遊戲代理的中國服可選擇,但是連線問題一直是海外玩家揮之不去的夢魘。
目前大部份的國際服中文化都是依賴中國服的資源--中國服雖然爛線,但對於翻譯的品質仍是相當頂尖的:
Lima: Linux virtual machines (on macOS),是一款專門在 macOS 上模擬 Linux 的軟體,基於 QEMU 並為 x86_64 及 ARM 都提供了良好的使用體驗。
相較於比較現代的程式語言(如 Golang 或 Nodejs),PHP 的佈署是相對麻煩許多的--這主要是因為 PHP 的執行環境需要綁定一個網頁伺服器。
PHP 官方主要支援兩種佈署方式:
註:在大部份應用情境下,Apache + PHP Module 會比 Apache + PHP-FPM 慢上一些,尤其是當 Apache + PHP-FPM 時可以啟用 Event MPM,相較於傳統的 prefork MPM 而言可以快上 50%
Laravel Sanctum 是 Laravel 提供的輕量化 API 服務認證(Authenticate)解決方案。
Driver | 套件 | Bearer Token | Session Cookie | Token Scope |
---|---|---|---|---|
Session | 內建 | ❌ | ✅ | ❌ |
Token | 內建 | ✅ | ❌ | ❌ |
Sanctum | laravel/sanctum | ✅ | ✅ | ✅ |
Passport | laravel/passport | ✅ | ❌ | ✅ |
大部份的 PHP 開發者都會告訴你:用 PDO 取代 mysqli
相關函式,它不僅支援 Prepared Statement,而且還有多種 Driver 可以隨時切換不同的 Database。