SlideShare a Scribd company logo
1 of 19
Download to read offline
Laravel 工作坊
使用者認證
shengyou @ 彰師大資工系學會 (2014.12.14)
階段任務
• 了解 Laravel 的使用者認證機制
• 為專案應用程式增加使用者認證
使用者認證
Laravel 的認證工具
• Laravel 原生就有內建認證類別 Auth;在專
案啟動時,就已經帶有 User Model;而在
artisan 指令內,也已經提供產生重設密碼
相關機制的指令
• 不過, App 本身要怎麼實作認證機制,則
留給開發人員自行決定
★ 官方文件:http://laravel.tw/docs/4.2/security
App 的認證機制
• 冊/帳號啟動機制 (Email)
• 登入/登出
• 忘記密碼/重設密碼
• 重寄認證信
P.S	
  本次工作坊 示範如何實作登入/登出的功能
實作使用者認證
登入/登出機制
AuthController@index
登入表單
AuthController@process
驗證資
清除登入資
任一頁面點擊
登出按鈕
AuthController@logout
返回首頁
返回首頁
登入機制
登出機制
實作內容
• 實作一個 users 資料表,裡面 存使用者
帳號、密碼及 remember token,並準備
UserTableSeeder,至少設定一組帳密
• 實作 AuthController 處理登入/登出動作
• 實作登入頁、各Views 上登入/登出狀態的
判斷機制
• 設定 Route
產生 users 資料表
• 用 artisan 指令建立一個 Migration 來產生
users 資料表,在 users 資料表內,至少要
有帳號、密碼及 remember token 三欄位
//	
  app/databases/migrations/create_users_table.php
Schema::create(‘users’,	
  function(Blueprint	
  $table)
{
	
  	
  	
  	
  $table-­‐>increments(‘id’);
	
  	
  	
  	
  $table-­‐>string(‘username’)-­‐>unique();
	
  	
  	
  	
  $table-­‐>string(‘password’);
	
  	
  	
  	
  $table-­‐>rememberToken();
	
  	
  	
  	
  $table-­‐>timestamps();
}
產生帳號
• 新增 UserTableSeeder,並在裡面設定一組
帳號/密碼
P.S	
  記得在	
  DatabaseSeeder	
  裡開啟	
  UserTableSeeder,並執行	
  db:seed
//	
  app/databases/seeds/UserTableSeeder.php
public	
  function	
  run()
{
	
  	
  	
  	
  DB::table(‘users’)-­‐>truncate();
	
  	
  	
  	
  
	
  	
  	
  	
  User::create([
	
  	
  	
  	
  	
  	
  	
  	
  ‘username’	
  =>	
  ‘{username}’,
	
  	
  	
  	
  	
  	
  	
  	
  ‘password’	
  =>	
  Hash::make(‘{password}’),
	
  	
  	
  	
  ]);
}
顯示登入表單
• 若使用者還末登入,顯示登入表單填寫帳
號及密碼
//	
  app/views/login/index.blade.php
Form::open(['route'	
  =>	
  'auth.process',	
  'method'	
  =>	
  'POST',	
  
'class'	
  =>	
  'form-­‐signin',	
  'role'	
  =>	
  'form'])
Form::text('username',	
  null,	
  ['class'	
  =>	
  'form-­‐control',	
  
'placeholder'	
  =>	
  '請輸入 的帳號',	
  'required',	
  'autofocus'])
Form::password('password',	
  ['class'	
  =>	
  'form-­‐control',	
  
'placeholder'	
  =>	
  '請輸入 的密碼',	
  'required'])
Form::submit('登入',	
  ['class'	
  =>	
  'btn	
  btn-­‐lg	
  btn-­‐primary	
  btn-­‐
block'])
Form::close()
驗證登入資
• 在 AuthController 裡接收登入資 並驗
證,假如成功的話就導回首頁,不成功的
話就返回登入頁
//	
  app/controllers/AuthController.php
if	
  (Auth::attempt(['username'	
  =>	
  Input::get('username'),	
  
'password'	
  =>	
  Input::get('password')],	
  Input::get('remember-­‐
me')))
{
	
   return	
  Redirect::route('home.index')-­‐>with('success',	
  '成
功登入');
}
處理登出動作
• 將登入的使用者登出,動作完成後回到首
頁,並顯示成功提示
//	
  app/controllers/AuthController.php
public	
  function	
  logout()
{
	
   Auth::logout();
	
  
	
   return	
  Redirect::route('home.index')
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  -­‐>with('success',	
  '已成功登出');
}
View 相關判斷
• 原本在View 上面寫的 @if 判斷,改成真
正的登入判斷
//	
  app/views/partials/sidebar.blade.php
<h4>網站管理</h4>
@if	
  (Auth::check())
<p><span	
  class="label	
  label-­‐success">管理中</span>	
  <a	
  
href="{{	
  route('auth.logout')	
  }}">登出</a></p>
@else
<p><a	
  href="{{	
  route('auth.login')	
  }}">登入</a></p>
@endif
Route 設定
• 將只提供給管理者用的 Route 組合成
group,並對該 group 加上 auth filter 以確
認 些 route 能登入後使用
//	
  app/routes.php
//	
  增加登入處理的	
  Route
Route::post('login/process',	
  ['as'	
  =>	
  'auth.process'	
  ,	
  
'uses'	
  =>	
  'AuthController@process']);
Route::get('logout',	
  ['as'	
  =>	
  'auth.logout'	
  ,	
  'uses'	
  =>	
  
'AuthController@logout']);
//	
   有管理者登入後才可以使用的	
  Route	
  放在	
  group	
  裡
Route::group(array('before'	
  =>	
  'auth'),	
  function()
{
});
試試看
• 在本次的範例內,只有簡單的實作使用者
登入/登出的功能。花點時間查詢一下官方
文件,試著增加以下幾個功能:
- 使用者 冊 > 帳號啟動
- 忘記密碼 > 密碼重設
階段檢查表
• 確認專案已完成前述提及的使用者認證機
制 4 個部份的動作,包括:
- DB migrate、seeding
- Views 更新
- 實作 Controller 動作
- Route 設定
問與答
學員可開始練習、實作
單元小結
• 在 個單元裡,我們說明學習如何使用
Laravel 的認證元件來實作登入、登出功能
• 下一個單元,我們將學習把實作完成的應
用程式 署至 PaaS 平台上,讓此應用程
式上線!

More Related Content

What's hot

Package 安裝與使用
Package 安裝與使用Package 安裝與使用
Package 安裝與使用Shengyou Fan
 
Model 設定與 Seeding
Model 設定與 SeedingModel 設定與 Seeding
Model 設定與 SeedingShengyou Fan
 
開發環境建置
開發環境建置開發環境建置
開發環境建置Shengyou Fan
 
Model & Seeding整合
Model & Seeding整合Model & Seeding整合
Model & Seeding整合Shengyou Fan
 
Model 設定與 Seeding
Model 設定與 SeedingModel 設定與 Seeding
Model 設定與 SeedingShengyou Fan
 
應用程式佈署
應用程式佈署應用程式佈署
應用程式佈署Shengyou Fan
 
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎View 與 Blade 樣板引擎
View 與 Blade 樣板引擎Shengyou Fan
 
Migrations 與 Schema 操作
Migrations 與 Schema 操作Migrations 與 Schema 操作
Migrations 與 Schema 操作Shengyou Fan
 
Laravel - 系統全攻略
Laravel - 系統全攻略Laravel - 系統全攻略
Laravel - 系統全攻略Vincent Chi
 
給你一個使用 Laravel 的理由
給你一個使用 Laravel 的理由給你一個使用 Laravel 的理由
給你一個使用 Laravel 的理由Shengyou Fan
 
Route 路由控制
Route 路由控制Route 路由控制
Route 路由控制Shengyou Fan
 
Package安裝與使用
Package安裝與使用Package安裝與使用
Package安裝與使用Shengyou Fan
 

What's hot (20)

驗證與訊息
驗證與訊息驗證與訊息
驗證與訊息
 
Package 安裝與使用
Package 安裝與使用Package 安裝與使用
Package 安裝與使用
 
驗證與訊息
驗證與訊息驗證與訊息
驗證與訊息
 
工作坊總結
工作坊總結工作坊總結
工作坊總結
 
CRUD 綜合運用
CRUD 綜合運用CRUD 綜合運用
CRUD 綜合運用
 
Model 設定與 Seeding
Model 設定與 SeedingModel 設定與 Seeding
Model 設定與 Seeding
 
開發環境建置
開發環境建置開發環境建置
開發環境建置
 
工作坊總結
工作坊總結工作坊總結
工作坊總結
 
Model & Seeding整合
Model & Seeding整合Model & Seeding整合
Model & Seeding整合
 
Model 設定與 Seeding
Model 設定與 SeedingModel 設定與 Seeding
Model 設定與 Seeding
 
CRUD 綜合運用
CRUD 綜合運用CRUD 綜合運用
CRUD 綜合運用
 
整合 Open ID
整合 Open ID整合 Open ID
整合 Open ID
 
使用者認證
使用者認證使用者認證
使用者認證
 
應用程式佈署
應用程式佈署應用程式佈署
應用程式佈署
 
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎View 與 Blade 樣板引擎
View 與 Blade 樣板引擎
 
Migrations 與 Schema 操作
Migrations 與 Schema 操作Migrations 與 Schema 操作
Migrations 與 Schema 操作
 
Laravel - 系統全攻略
Laravel - 系統全攻略Laravel - 系統全攻略
Laravel - 系統全攻略
 
給你一個使用 Laravel 的理由
給你一個使用 Laravel 的理由給你一個使用 Laravel 的理由
給你一個使用 Laravel 的理由
 
Route 路由控制
Route 路由控制Route 路由控制
Route 路由控制
 
Package安裝與使用
Package安裝與使用Package安裝與使用
Package安裝與使用
 

Viewers also liked

開發流程與工具介紹
開發流程與工具介紹開發流程與工具介紹
開發流程與工具介紹Shengyou Fan
 
Schema & Migration操作
Schema & Migration操作Schema & Migration操作
Schema & Migration操作Shengyou Fan
 
使用 Eloquent ORM
使用 Eloquent ORM使用 Eloquent ORM
使用 Eloquent ORMShengyou Fan
 
PHP 語法基礎與物件導向
PHP 語法基礎與物件導向PHP 語法基礎與物件導向
PHP 語法基礎與物件導向Shengyou Fan
 
啟動 Laravel 與環境設定
啟動 Laravel 與環境設定啟動 Laravel 與環境設定
啟動 Laravel 與環境設定Shengyou Fan
 
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎View 與 Blade 樣板引擎
View 與 Blade 樣板引擎Shengyou Fan
 
應用程式部署
應用程式部署應用程式部署
應用程式部署Shengyou Fan
 
專案啟動與環境設定
專案啟動與環境設定專案啟動與環境設定
專案啟動與環境設定Shengyou Fan
 

Viewers also liked (11)

開發流程與工具介紹
開發流程與工具介紹開發流程與工具介紹
開發流程與工具介紹
 
Schema & Migration操作
Schema & Migration操作Schema & Migration操作
Schema & Migration操作
 
使用 Eloquent ORM
使用 Eloquent ORM使用 Eloquent ORM
使用 Eloquent ORM
 
課程簡介
課程簡介課程簡介
課程簡介
 
PHP 語法基礎與物件導向
PHP 語法基礎與物件導向PHP 語法基礎與物件導向
PHP 語法基礎與物件導向
 
啟動 Laravel 與環境設定
啟動 Laravel 與環境設定啟動 Laravel 與環境設定
啟動 Laravel 與環境設定
 
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎View 與 Blade 樣板引擎
View 與 Blade 樣板引擎
 
應用程式部署
應用程式部署應用程式部署
應用程式部署
 
工作坊簡介
工作坊簡介工作坊簡介
工作坊簡介
 
專案啟動與環境設定
專案啟動與環境設定專案啟動與環境設定
專案啟動與環境設定
 
Eloquent ORM
Eloquent ORMEloquent ORM
Eloquent ORM
 

Similar to 使用者認證

Laradebut #7 - Laravel AUTH
Laradebut #7 - Laravel AUTHLaradebut #7 - Laravel AUTH
Laradebut #7 - Laravel AUTHSzuping Wang
 
Cas Sso Intro
Cas Sso IntroCas Sso Intro
Cas Sso IntroShiny Zhu
 
OpenWebSchool - 11 - CodeIgniter
OpenWebSchool - 11 - CodeIgniterOpenWebSchool - 11 - CodeIgniter
OpenWebSchool - 11 - CodeIgniterHung-yu Lin
 
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練5
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練52015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練5
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練5Duran Hsieh
 
與 Sign in with Apple 的愛恨情仇 @ iPlayground2020
與 Sign in with Apple 的愛恨情仇 @ iPlayground2020與 Sign in with Apple 的愛恨情仇 @ iPlayground2020
與 Sign in with Apple 的愛恨情仇 @ iPlayground2020Johnny Sung
 
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練4
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練42015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練4
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練4Duran Hsieh
 
zend framework in web services
zend framework in web serviceszend framework in web services
zend framework in web services王 承石
 
5, workflow function activity
5, workflow function activity5, workflow function activity
5, workflow function activityted-xu
 
Power flow簡介
Power flow簡介Power flow簡介
Power flow簡介Sky Wu
 
04.uliweb更多话题介绍
04.uliweb更多话题介绍04.uliweb更多话题介绍
04.uliweb更多话题介绍modou li
 
11个步骤应用Spring Security 3(西安尚学堂~付老实)
11个步骤应用Spring Security 3(西安尚学堂~付老实)11个步骤应用Spring Security 3(西安尚学堂~付老实)
11个步骤应用Spring Security 3(西安尚学堂~付老实)Underwind
 
11个步骤应用Spring Security 3
11个步骤应用Spring Security 311个步骤应用Spring Security 3
11个步骤应用Spring Security 3Underwind
 
3, workflow in ebs
3, workflow in ebs3, workflow in ebs
3, workflow in ebsted-xu
 
Uliweb cheat sheet_0.1
Uliweb cheat sheet_0.1Uliweb cheat sheet_0.1
Uliweb cheat sheet_0.1modou li
 
anhengjumpserverpocreportandcustome.pptx
anhengjumpserverpocreportandcustome.pptxanhengjumpserverpocreportandcustome.pptx
anhengjumpserverpocreportandcustome.pptxlizhe20032004
 
Vlog02 [eng sub]什麼是controller和如何在asp.net核心中創建controller?-what is controller ...
Vlog02  [eng sub]什麼是controller和如何在asp.net核心中創建controller?-what is controller ...Vlog02  [eng sub]什麼是controller和如何在asp.net核心中創建controller?-what is controller ...
Vlog02 [eng sub]什麼是controller和如何在asp.net核心中創建controller?-what is controller ...SernHao TV
 

Similar to 使用者認證 (19)

Laradebut #7 - Laravel AUTH
Laradebut #7 - Laravel AUTHLaradebut #7 - Laravel AUTH
Laradebut #7 - Laravel AUTH
 
Cas Sso Intro
Cas Sso IntroCas Sso Intro
Cas Sso Intro
 
OpenWebSchool - 11 - CodeIgniter
OpenWebSchool - 11 - CodeIgniterOpenWebSchool - 11 - CodeIgniter
OpenWebSchool - 11 - CodeIgniter
 
OAuth2介紹
OAuth2介紹OAuth2介紹
OAuth2介紹
 
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練5
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練52015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練5
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練5
 
與 Sign in with Apple 的愛恨情仇 @ iPlayground2020
與 Sign in with Apple 的愛恨情仇 @ iPlayground2020與 Sign in with Apple 的愛恨情仇 @ iPlayground2020
與 Sign in with Apple 的愛恨情仇 @ iPlayground2020
 
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練4
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練42015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練4
2015 年逢甲大學資訊系:ASP.NET MVC 4 教育訓練4
 
zend framework in web services
zend framework in web serviceszend framework in web services
zend framework in web services
 
5, workflow function activity
5, workflow function activity5, workflow function activity
5, workflow function activity
 
CAREY-Tech SSO
CAREY-Tech SSOCAREY-Tech SSO
CAREY-Tech SSO
 
Power flow簡介
Power flow簡介Power flow簡介
Power flow簡介
 
04.uliweb更多话题介绍
04.uliweb更多话题介绍04.uliweb更多话题介绍
04.uliweb更多话题介绍
 
11个步骤应用Spring Security 3(西安尚学堂~付老实)
11个步骤应用Spring Security 3(西安尚学堂~付老实)11个步骤应用Spring Security 3(西安尚学堂~付老实)
11个步骤应用Spring Security 3(西安尚学堂~付老实)
 
11个步骤应用Spring Security 3
11个步骤应用Spring Security 311个步骤应用Spring Security 3
11个步骤应用Spring Security 3
 
API技术讲解
API技术讲解API技术讲解
API技术讲解
 
3, workflow in ebs
3, workflow in ebs3, workflow in ebs
3, workflow in ebs
 
Uliweb cheat sheet_0.1
Uliweb cheat sheet_0.1Uliweb cheat sheet_0.1
Uliweb cheat sheet_0.1
 
anhengjumpserverpocreportandcustome.pptx
anhengjumpserverpocreportandcustome.pptxanhengjumpserverpocreportandcustome.pptx
anhengjumpserverpocreportandcustome.pptx
 
Vlog02 [eng sub]什麼是controller和如何在asp.net核心中創建controller?-what is controller ...
Vlog02  [eng sub]什麼是controller和如何在asp.net核心中創建controller?-what is controller ...Vlog02  [eng sub]什麼是controller和如何在asp.net核心中創建controller?-what is controller ...
Vlog02 [eng sub]什麼是controller和如何在asp.net核心中創建controller?-what is controller ...
 

More from Shengyou Fan

[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式Shengyou Fan
 
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...Shengyou Fan
 
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀Shengyou Fan
 
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能Shengyou Fan
 
How I make a podcast website using serverless technology in 2023
How I make a podcast website using serverless technology in 2023How I make a podcast website using serverless technology in 2023
How I make a podcast website using serverless technology in 2023Shengyou Fan
 
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀Shengyou Fan
 
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台Shengyou Fan
 
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇Shengyou Fan
 
Using the Exposed SQL Framework to Manage Your Database
Using the Exposed SQL Framework to Manage Your DatabaseUsing the Exposed SQL Framework to Manage Your Database
Using the Exposed SQL Framework to Manage Your DatabaseShengyou Fan
 
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具Shengyou Fan
 
[COSCUP 2022] Kotlin Collection 遊樂園
[COSCUP 2022] Kotlin Collection 遊樂園[COSCUP 2022] Kotlin Collection 遊樂園
[COSCUP 2022] Kotlin Collection 遊樂園Shengyou Fan
 
初探 Kotlin Multiplatform
初探 Kotlin Multiplatform初探 Kotlin Multiplatform
初探 Kotlin MultiplatformShengyou Fan
 
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率Shengyou Fan
 
[PHP 也有 Day #64] PHP 升級指南
[PHP 也有 Day #64] PHP 升級指南[PHP 也有 Day #64] PHP 升級指南
[PHP 也有 Day #64] PHP 升級指南Shengyou Fan
 
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用Shengyou Fan
 
Composer 經典食譜
Composer 經典食譜Composer 經典食譜
Composer 經典食譜Shengyou Fan
 
老派浪漫:用 Kotlin 寫 Command Line 工具
老派浪漫:用 Kotlin 寫 Command Line 工具老派浪漫:用 Kotlin 寫 Command Line 工具
老派浪漫:用 Kotlin 寫 Command Line 工具Shengyou Fan
 
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS AggregatorShengyou Fan
 
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON APIShengyou Fan
 
[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless
[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless
[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin ServerlessShengyou Fan
 

More from Shengyou Fan (20)

[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
 
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
 
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
 
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
 
How I make a podcast website using serverless technology in 2023
How I make a podcast website using serverless technology in 2023How I make a podcast website using serverless technology in 2023
How I make a podcast website using serverless technology in 2023
 
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
 
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
 
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
 
Using the Exposed SQL Framework to Manage Your Database
Using the Exposed SQL Framework to Manage Your DatabaseUsing the Exposed SQL Framework to Manage Your Database
Using the Exposed SQL Framework to Manage Your Database
 
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
 
[COSCUP 2022] Kotlin Collection 遊樂園
[COSCUP 2022] Kotlin Collection 遊樂園[COSCUP 2022] Kotlin Collection 遊樂園
[COSCUP 2022] Kotlin Collection 遊樂園
 
初探 Kotlin Multiplatform
初探 Kotlin Multiplatform初探 Kotlin Multiplatform
初探 Kotlin Multiplatform
 
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
 
[PHP 也有 Day #64] PHP 升級指南
[PHP 也有 Day #64] PHP 升級指南[PHP 也有 Day #64] PHP 升級指南
[PHP 也有 Day #64] PHP 升級指南
 
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
 
Composer 經典食譜
Composer 經典食譜Composer 經典食譜
Composer 經典食譜
 
老派浪漫:用 Kotlin 寫 Command Line 工具
老派浪漫:用 Kotlin 寫 Command Line 工具老派浪漫:用 Kotlin 寫 Command Line 工具
老派浪漫:用 Kotlin 寫 Command Line 工具
 
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
 
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
 
[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless
[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless
[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless
 

使用者認證