0916~0919_開學季語言展

【電子書】使用Laravel 8 PHP主流框架打造RESTful API(iT邦幫忙鐵人賽系列書)

達洋貓《櫻花樹》一卡通

達洋貓《櫻花樹》一卡通

【開學大作戰】一卡通全面限時9折起

  • 420

活動訊息

用閱讀開啟視野,讓書成為照亮你人生的光
【金石堂選書】本月推薦您這些好書👉 快來看看

內容簡介

全台第一本 Laravel 8

手把手的教學,立馬擁有寫程式的一技之長!
完整的規劃,學習如何一步一步打造 API

✦入門PHP基礎、物件導向、開始使用 Laravel。
✦使用 Laravel 打造 RESTful API。
✦學會如何重構優化 API 以及大型系統設計的正確思路。

本書改編自第11屆iT邦幫忙鐵人賽 Modern Web 組優選網路系列文章---《使用 Laravel 打造 RESTful API》,適用目前最新版 Laravel 8 的版本,使用簡單易懂的方式從如何使用 PHP 以及 Laravel 框架開始到進階學習設計模式,完成一個 RESTful API系統,這本書將帶給您一套基礎職前訓練。

API 可以把它想像成網路世界的郵差或餐廳的服務生,跟服務生說我要點一份蝦仁炒飯,服務生將開始一連串的動作,跟客人確認餐點、送單、等待廚師完成餐點、端到客人桌上,客人只需要跟服務生說我要蝦仁炒飯這幾個字,這就是 API,給需要的資料,等待結果回應,目前很多的應用程式像是聊天機器人、開放銀行或是使用 Facebook 帳號登入、註冊其他的網站...這些功能都要使用到 API 來溝通,未來5G物聯網的來臨,懂得API技術,勢必是必要的技能。

❄本書建議訓練流程

起始➔實作➔優化

起始:基本 PHP,結合第二專長
✦PHP 基礎入門、物件導向設計模式。
✦開始使用 Laravel PHP 框架。
✦發現有興趣的議題結合 API 系統規劃。

實作:完成一個 RESTful API 的內容管理系統
✦新增、刪除、修改、查詢 RESTful API 實作教學。
✦輸入表單驗證,擁有安全的輸入資料。
✦統一輸出回應的格式。
✦身分驗證、權限分組。

優化:學會如何寫出具有一定品質的程式碼
✦重構的評估、功能測試、開始重構。
✦完成的 API 尚有不足的地方分享作者的重構經驗。
✦自動產生 API 文件。

作者

王盛立

開發PHP有三年以上的業界經驗,善於系統開發、整理資料、分析資料。

第11屆以《使用 Laravel 打造 RESTful API》得到iT邦幫忙鐵人賽Modern Web組優選以及COSCUP 2020 PostgreSQL 社群議程 《關於關聯這件事 - 後端認識外鍵約束》 講者。

目錄

01 開發環境
1.1 安裝 XAMPP
1.2 安裝編輯器
1.3 套件管理–Composer
1.4 開發 API 工具–Postman
1.5 版本控制–Git
1.6 小練習–port 是什麼?

02 PHP 介紹
2.1 PHP 檔案
2.2 基本語法
2.3 控制流程
2.4 函數(function)
2.5 小練習–延伸閱讀

03 PHP 物件導向設計
3.1 什麼是物件導向?
3.2 類別(Class)
3.3 繼承(Extends)
3.4 封裝(Encapsulation)
3.5 介面(Interface)
3.6 命名空間(namespace)
3.7 小練習–我的理解

04 RESTful API
4.1 Web API
4.2 HTTP 傳輸協定
4.3 HTTP 動詞
4.4 HTTP 標頭
4.5 HTTP 狀態碼
4.6 HTTP Body
4.7 第一次開發網站的我
4.8 REST 風格
4.9 小練習:決定一個資源

05 進入Laravel、規劃系統核心目的
5.1 安裝 Laravel
5.2 新增資料庫
5.3 設定資料庫管理帳號
5.4 Laravel 環境變數檔案設定
5.5 從生活找到動力–系統構想
5.6 情境分析–具體目標
5.7 小練習–Git 初始化環境

06 新增資源
6.1 定義一個資源
6.2 新建資源檔案
6.3 MVC 架構
6.4 資料庫結構
6.5 資料庫規劃
6.6 實作 Migration
6.7 新建動物的功能
6.8 嘗試可不可以運行
6.9 小練習–Git 目前進度

07 刪除資源以及異常處理
7.1 實作刪除功能
7.2 Delete 動詞回應資料
7.3 嘗試可不可以運行
7.4 異常錯誤處理
7.5 小練習–Laravel 軟體刪除

08 更新資源
8.1 PUT | PATCH 動詞的差別
8.2 嘗試可不可以運行更新動物
8.3 HTTP Content–Type header
8.4 小練習–_method

09 查詢資源
9.1 兩種查詢資源的動作
9.2 查詢單一資源資料
9.3 查詢資源列表
9.4 Factory 產生資料
9.5 資源列表限制
9.6 資源列表分頁
9.7 JSON 格式建議
9.8 資源列表篩選
9.9 資源列表排序
9.10 資源列表快取
9.11 小練習–Model 查詢以及集合運用

10 表單驗證以及語系設定
10.1 前言
10.2 安全的輸入資料
10.3 嘗試可不可以運行
10.4 設定系統語系
10.5 小練習–查詢 Laravel 官方文件

11 Model 關聯以及統一輸出
11.1 分類資源 CRUD
11.2 嘗試讓 API 回傳以下結果
11.3 建立模型關聯–一對多
11.4 Resource 轉換格式
11.5 分析需求統一輸出格式
11.6 補強新增、更新動物資源功能
11.7 小練習–關聯式資料庫

12 身分驗證
12.1 加入會員認證
12.2 註冊帳號
12.3 Laravel 安裝 Passport 身分驗證套件
12.4 設定 Passport
12.5 OAuth2 認證機制 Token 原理
12.6 設定操作資源需驗證的方法
12.7 密碼授權取得 Token
12.8 自訂 Token 過期時間
12.9 刷新 access_token
12.10 SCOPE
12.11 客戶端憑證授權
12.12 修改由身分驗證寫入 user_id
12.13 小練習–Passport 其他授權方式
12.14 小練習–中介層是什麼?

13 需求變更
13.1 修改資料表新建 Migration
13.2 Policy 會員權限原則設計
13.3 增加需求–我的最愛追蹤功能
13.4 小練習–try…catch…資料庫交易

14 容易擴充維護的 API
14.1 URI 格式
14.2 Resource | Utility API
14.3 設定請求次數
14.4 CORS
14.5 快取機制
14.6 HTTPS
14.7 其它建議
14.8 小練習–CORS 體驗

15 重構的觀念
15.1 什麼是重構?
15.2 評估現有的程式碼
15.3 重構步驟
15.4 大型專案設計模式
15.5 小練習–VSCode 建議安裝套件

16 測試的初探
16.1 為什麼寫測試
16.2 測試檔案命名規則
16.3 重置資料庫
16.4 建立測試資料庫
16.5 功能測試
16.6 結論

17 開始重構程式碼
17.1 Request 驗證資料檔案
17.2 Service 設計架構
17.3 結論

18 更好的自己更好的 API
18.1 直接動手做(心情分享)
18.2 修改原本設計的 URI
18.3 API 的 Controller 歸類在一個資料夾中
18.4 如何安心升級 Laravel 7 到 8

19 產生 API 文件
19.1 安裝套件
19.2 設定 API 說明文件基本資訊
19.3 註解關鍵字介紹
19.4 總結
19.5 小練習–建立 API 流程心法
19.6 小練習–正式上線設定建議

20 附錄
20.1 Mac 更新 PHP
20.2 常見 HTTP 狀態碼總覽

詳細資料

詳細資料

    • 語言
    • 中文繁體
    • 裝訂
    • ISBN
    • 9789864345304
    • 分級
    • 普通級
    • 頁數
    • 352
    • 商品規格
    • 23*17
    • 出版地
    • 台灣
    • 適讀年齡
    • 全齡適讀
    • 注音
    • 級別

商品評價

訂購/退換貨須知

加入金石堂 LINE 官方帳號『完成綁定』,隨時掌握出貨動態:

加入金石堂LINE官方帳號『完成綁定』,隨時掌握出貨動態
金石堂LINE官方帳號綁定教學

提醒您!!
金石堂及銀行均不會請您操作ATM! 如接獲電話要求您前往ATM提款機,請不要聽從指示,以免受騙上當!

購買須知:

使用金石堂電子書服務即為同意金石堂電子書服務條款

電子書分為「金石堂(線上閱讀+APP)」及「Readmoo(兌換碼)」兩種:

金石堂 電子書
  • 將儲存於會員中心→電子書服務「我的e書櫃」,點選線上閱讀直接開啟閱讀。
    1. 線上閱讀:
      建議使用Chrome、Microsoft Edge 有較佳的線上瀏覽效果, iOS 14.2 或以上版本,Android 6.0 以上版本,建議裝置有6GB以上的記憶體,至少有 30 MB以上的容量。
    2. 離線閱讀:
      APP下載:iOS Android
      安裝電子書APP後,請依照提示登入「會員中心」→「我的E書櫃」→「電子書APP通行碼/載具管理」,取得通行碼再登入下載您所購買的電子書。完成下載後,點選任一書籍即可開始離線閱讀。
Readmoo 電子書
  • 請至會員中心→電子書服務「我的e書櫃」領取複製『兌換碼』至電子書服務商Readmoo進行兌換。

退換貨須知:

  • 因版權保護,您在金石堂所購買的電子書僅能以金石堂專屬的閱讀軟體開啟閱讀,無法以其他閱讀器或直接下載檔案。
  • 依據「消費者保護法」第19條及行政院消費者保護處公告之「通訊交易解除權合理例外情事適用準則」,非以有形媒介提供之數位內容或一經提供即為完成之線上服務,經消費者事先同意始提供。(如:電子書、電子雜誌、下載版軟體、虛擬商品…等),不受「網購服務需提供七日鑑賞期」的限制。為維護您的權益,建議您先使用「試閱」功能後再付款購買。
※ 本品無額外回饋
金石堂門市 全家便利商店 ok便利商店 萊爾富便利商店 7-11便利商店
World wide
活動ing