蘇州培訓網 > 蘇州思科認證培訓機構 > 三網IT
首頁 培訓網 最新資訊 熱門問答

三網IT

13013833891 免費試聽

您當前的位置: 蘇州IT認證培訓 > 蘇州思科認證培訓 > 常熟思科認證

常熟思科認證_思科認證培訓

¥詳詢

班制:周末班

蘇州三網IT教育
上課(咨詢)地址:蘇州市干將東路666號和基廣場
報名咨詢 預約試聽
課程介紹
常熟思科認證

思科認證課程介紹:理論課程

常熟思科認證

理論課程根據CCIE RS v5.0考試大綱內 容要求進行設計,共包含五個模塊

【1 】Layer 2 Technologies
【2】 Layer 3 Technologies
【3 】VPN Technologies
【4 】Infrastructure Security
【5 】Infrastructure Services

理論課程每個模塊除了老師直播上課之外,還將為學員提供

【1】老師上課使用的課件

【2】老師上課的課堂筆記

【3】老師上課的講解視頻

【4】理論測試文檔

【5】實驗測試文檔

【6】一對一答疑服務及群答疑

【7】.....等

常熟思科認證

場地租賃服務

常熟思科認證

擁有10間專業(yè)培訓教室,包括了20臺、25臺和30臺等不同規(guī)格的培訓機房, 機器配置性能卓越,高速率連接因特網,可以滿足不 同層次的信息化培訓需求。

先后為Microsoft公司、IBM公司、Oracle公司、Juniper公司、EMC公司,中 國移動、中國石化等客戶提供了相應的培訓場地服務 ,獲得了客戶的一致認可!

思科CCIE-DC直通車(數據中心)

常熟思科認證

思科CCIE-DC直通車”課程涵蓋思科數據中心方向的所有初級、中級、高級課程知識,總共分為CCNA->CCNP->CCIE三個階段,共5門課程,總課時為16天。課程設計由淺入深,適合所有具備CCNP-RS基礎的學員參加。
1.1 CCNA-DC(包含1門課程,課時4天)
課程概述:包含NEXUS 交換機基礎知識,存儲原理知識,服務器虛擬化知識等數據中心方面的基礎知識。
1.2 CCNP-DC(包含3門課程,課時12天)
課程概述:包含NXOS 交換機的原理和配置、存儲網絡的原理和配置、UCS 服務器架構和使用、服務器虛擬化和網絡虛擬化等知識。
課程列表:
1)  NX-OS(NEXUS 交換機):課時6天,包含NXOS 的原理和配置
2)  Storage(存儲網絡):課時3 天,包含存儲網絡的原理知識和配置方法。
3)  UCS(UCS 服務器):課時3天,包含服務器的操作使用以及網絡虛擬化。
1.3 CCIE-DC集訓營(包含1門課程,課時按需安排)
課程概述:包含CCIE LAB考試的高級知識點、分解實驗、考題講解等。

laravel4.2框架路由配置深入了解(上篇)



laravel框架路由并不像YII或CI等框架那樣有著固定的默認方式(路徑,GET,POST來提?。?,因此在使用laravel框架時配置路由是必備的。

路由是**配置注入到程序中,laravel路由非常靈活,不僅可以指定Controller對應的Action還可以完成很多的偽靜太工作,在進入MVC前還可以做一些必要的參數過濾。

優(yōu)點:

面向對象管理路由,配置靈活,可以針對不同的地址解析處理。


路由可過濾,分組提高路由調用精準安全。


路由執(zhí)行不只針對MVC控制器,也可以寫入其它自定義處理入口。


路由調用Action時可以定義調用傳入的參數。


路由可以區(qū)分GET,HEAD,POST,PUT,PATCH,DELETE,OPTIONS等請方式調用不同的Action

缺點:



路由管理程序復雜,增加系統(tǒng)負載。


路由配置會隨著系統(tǒng)升級改版不斷增加,增加了維護時間。


路由配置靈活,但每個Controller**少一個路由配置管理,增加開發(fā)流程。



路由是入口必經之路,如果路由配置出錯,會讓整個系統(tǒng)報錯,影響升級維護開發(fā)。

**方文檔中對路由配置做了些常規(guī)的示例:http://v4.golaravel.com/docs/4.2/routing

路由配置都是** Illuminate\Support\Facades\Route 類,Route實際上是一個外觀類,它繼承于Illuminate\Support\Facades\Facade 并不是直接的路由類,框架**類別名處理使Illuminate\Support\Facades\Route可以**Route訪問,這樣可以大大的簡化代碼,Route類本身是全靜態(tài)方法,只要調用的靜態(tài)方法非當前類的,都可以當路由類來使用,(**次使用必需是靜態(tài)調用方法,如:Route::controller(user, UserController);)。實際上在laravel框架中大量了使用這種外觀模式,我們可以在 vendor/laravel/framework/src/Illuminate/Support/Facades/目錄下看到很多的外觀類,這些外觀外都已經指定了對應的操作類,存放在loC容器類中,使用這種外觀模式主要是統(tǒng)一入口類,簡化程序,當然如果不使用這些外觀類直接調用對應的類也可以,只是有的類在調用時沒有那么方便,可能有的類在new時需要一些參數,而這些參數又要創(chuàng)建一些對象,相對對使用外觀類來說復雜的多。



所有的外觀類都可以** Facades::getFacadeRoot() 來獲取外觀類指定的實際類對象,如:

$route=Route::getFacadeRoot();//獲取路由對象
var_dump(get_class($route));//打印對象
# 打印結果如下
# string(25) "Illuminate\Routing\Router"

所以


1 Route::controller(user, UserController);

1 Route::getFacadeRoot()->controller(user, UserController);

這兩行代碼功能結果是一樣的。

laravel框架的外觀模式比較復雜,這里就不多作說明。

上面我們打印了路由類(Illuminate\Routing\Router),現在我們來看看路由類的對外函數:



/*============= 路由基本配置 =============*/

/*
* ******** 常規(guī)路由配置 **********
*
*參數:$uri [string]指定URL地址,必須是標準的URL地址,不含域名
*      $action [Closure|array|string] 要調用的控制方法
*      $methods [array|string] 指定請求類型如:GET,HEAD,POST,PUT,PATCH,DELETE,OPTIONS
*返回值:\Illuminate\Routing\Route對象
*/
Route::get($uri, $action);//配置使用GET或HEAD請求路由
 
Route::post($uri, $action);//配置使用POST請求路由
 
Route::put($uri, $action);//配置使用PUT請求路由
 
Route::patch($uri, $action);//配置使用PATCH請求路由
 
Route::delete($uri, $action);//配置使用DELETE請求路由
 
Route::options($uri, $action);//配置使用OPTIONS請求路由
 
Route::any($uri, $action);//配置使用GET,HEAD,POST,PUT,PATCH,DELETE請求路由
 
Route::match($methods, $uri, $action);//配置自定義請求路由

常規(guī)路由配置是一對一的配置,也就是說一個action就得配置一個路由。


常規(guī)路由配置中,框架會先以請求類型匹配如:GET或POST然后提出匹配成功的路由,這種方式配置的路由并未加載對應的Action文件,只是暫存一些加載信息,相對安全,但其配置數據比較多。


注意:

$url 是請求路由地址,允許配置方法:


直接對應的URL地址,如:test-route/action



提取參數方式,如:test/{name}/{id?} 注意:在{}內的是從請求路由URL中匹配提取的標識,并不單指請求的URL地址為 test/name/id。在{}中只參數的占位標識,它可以是‘test/show/1’或‘show/list’等,相當于正則:‘test/[^/] (/[^\]*)?’,占位標識還可以用來參數判斷過濾處理,即指定參數的數據結構,如果匹配的則進入路由。

$action 參數允許有三種類型:

   Closure 是匿名函數,當前路由配置成功后會調用這個匿名函數,默認是不會有參數傳入,如果在路由URL中配置值則按配置的先后傳入URL路由參數。

   array 是數組方式,可有元素如:

array(
    # 指定訪問域名,并且可以使用{}把域名的部分內容提取來當Action的參數,
    #    以下方式是把laravel提取出來傳給Action方法**個參數,
    #    可以同時提取多個,默認為空。
    # 注意:在{}中間的字符串只是參數名,并不是指定這個域名,只是指定了相關規(guī)則。
    # 同路由URL一樣處理
    
    domain=>www.{laravel}.com,
 
    # 必須設置,可以是匿名函數或控制器@方法
    #(**后還是會轉為匿名函數,原值放在controller下標中保存)
 
    uses=>HomeController@anyIndex,
 
    prefix=>dc-,  //路由URL前綴部分,默認為空。
 
    # 當前路由的名稱,下面會詳細說明。
    
    as=>name,
    
    controller=>HomeController@anyIndex, //無須設置,該下標是uses下標的副本。
    
    Closure=>function(){}, //類似uses,但只能指定匿名函數,優(yōu)先級沒有uses高
    
    https, //指定HTTP是否為加密模式
    
    http, //指定HTTP是否為非加密模式
    
    # 過濾參數說明:
    #  before 與after 元素是輸入輸出過濾處理,
    #  這兩個需要**Route::filter添加過濾項,否則無效
    #  過濾規(guī)則:[array|string]
    #  數組形式:array(name,list)
    #  字符串形式:name:filter|list:filter
    #  注意filter非必需,只是用來傳入過濾器的參數值,
    #  可以用,來連接多個參數。如果沒有filter參數則可以這樣寫 name|list。
    
    
    before=>name:filter|list:filter, //進入action前參數過濾處理規(guī)則
    
    after=>array(name,list) //調用action返回值進行過濾處理規(guī)則
)


    string 是直接給定路由要執(zhí)行的 控制器@方法 例:GoodsController@anyList。格式必須正確。

提醒:路由中的URL或域名可以獲取指定提取參數,如:

Route::get(index/{id},indexController@Action);


則可以**:

Route::input(id);

獲取參數值。參數鍵名必需相同。



還可以**:


Route::current()->parameters();



獲取全部參數數組。

路由指定的 as 名稱使用:

當在路由中指定了as鍵名,則當前這個路由器具有更多操作功能:

例:

Route::get(index/{id?},[as=>name,users=>IndexController@index])

** Route::currentRouteName() 獲取當前執(zhí)行路由的 as 值,如果不存在則返回 null

也可以用于生成URL地址或跳轉。



URL::route(name); //生成URL地地址: index
Redirect::route(name); //跳轉地址: index



或者:
URL::route(name,12); 生成URL地址:index/12
Redirect::route(name,12); 生成跳轉URL為:index/12




也就是說,如果URL地址或域名中有指定參數,
則可以在 URL::route或Redirect::route追加參數

注意:如果上面例子中的URL為‘index/{id}’,不指定為{id?}時,則在使用URL::route時,則必需使用追加參數的方式,否則‘{id}’串會被生成到URL地址:/index/{id}


路由判斷,是比較常用的,通常如果我們指定了路由的AS則判斷會更加方便,尤其是多個路由指定到同一個Action中時,會更容易判斷。

Route::is(name); 匹配成功返回true,失敗返回false,



參數可以使用 * 進行正則通配,但只能使用 * 作為通配,不能使用其它正則表達式
可以傳入多個參數。如:
Route::is(name1,name2,name/laravel/*);



當然我們也可以使用 Request::is(index/*);來判斷,當然這種判斷不具有便捷性。


判斷是否存在某個路由
Route::has(name);



其實,給路由添加 as 也比較方便權限管理,對于添加一個 as 值或添加一個 url 地址來比,as 名稱有很大我方便性。


/*
* ******** 路由過濾器配置 **********
*
*參數:$name [string]過濾器名,實際會生成 router.filter:$name 事件標識
*      $callback [mixed] 要調用的過濾控制方法
*返回值:\Illuminate\Routing\Route對象
*/
Route::filter($name, $callback)


   參數 $callback 支持參數類型:

 Closure 匿名函數。



 FilterClassName[@ActionName] 過濾器類名或者再加上過濾器方法名,默認方法名為filter。

 array 要過濾的對象與方法名數組如 array(new FilterClass,number)




**終是以調用函數的方法進行處理,參數順序有:



當前路由對象 Illuminate\Routing\Route



當前請求對象 Illuminate\Http\Request


過濾規(guī)則中追加的參數,如果沒有追加則為空。


如:

# 添加常規(guī)路由
 
Route::get(test/filter,[
    Closure=>function(){ //處理函數
        return ok;
    },
    before=>name:test,arg //添加進入處理函數前過濾處理
 ]);
 
# 添加過濾器
 
Route::filter(name,function($route, $request,$response1,$response2){
    var_dump($response1,$response2);die;
});



請求地址:/test/filter




結果:string(3) "test" string(3) "arg"


注意:在過濾器中返回值會直接影響到路由是否成功調用控制器的Action,只要過濾器中有返回值,都會直接跳過調用控制器的Action而直接把過濾器的返回值作為本次請求的結果,同樣過濾器的返回值得按標準的類型處理,允許類型有:string,array,Redirect(地址跳轉處理),或者ROM數據集等,不能出現布爾,資源,沒有__toString函數的對象等。


/*
* ******** 路由全局選擇性過濾**********
*
*參數:$pattern [string] 匹配路由URL串
*      $name [string] 要調用的過濾器名,** Route::filter 添加的過濾器
*      $methods [array|string|null] 請求類型如:get,post等,可以指定多個類型
*返回值:\Illuminate\Routing\Route對象
*
*/
 
# 只要匹配 $pattern 串的路由URL都執(zhí)行,
#          $name 過濾器名,
#          $methods 是指定請求類型,允許單個或多個。
# 注意:$pattern 允許使用 * 通配,如 admin/* ,不能使用其它正則表達式。
 
Route::when($pattern, $name, $methods = null);
 
# 只要匹配 $pattern 正則的路由URL都執(zhí)行,
#          $name 過濾器名,
#          $methods 是指定請求類型,允許單個或多個。
# 注意:這里 $pattern 是正則表達式。
 
Route::whenRegex($pattern, $name, $methods = null);


注意:選擇性路由過濾是針對當前所有的注入路由節(jié)點,只要路由節(jié)點的URL匹配成功都會執(zhí)行指定的過濾器,并不會因為有些路由節(jié)點在這之前而不影響。


如:

Route::get(admin/{id},function(){



    var_dump(Route::input(id));



});

Route::whenRegex(#admin/(\d )?#,filterId,[post,get]);


Route::when(admin/*,filterNum,[post,get]);


Route::filter(filterNum,function(){



    var_dump(filterNum);


});


Route::filter(filterId,function(){


    var_dump(filterId);


});

請求地址:admin/12




輸出的結果是:

string(9) "filterNum"
string(8) "filterId"
string(2) "12"


注意:使用when比使用whenRegex過濾的優(yōu)先級高,也就是使用when要在使用whenRegex添加過濾先執(zhí)行,不輪先程序后。whenRegex添加是完全使用正則的方式,所以**個參數必需是合法可用的正則表達式。when與whenRegex是全局的,只要有添加的路由節(jié)點URL能匹配到則會進入過濾器。

/*
* ******** 路由參數判斷過濾器配置 **********
*
*參數:$key [string]參數名稱,如路由URL:test/filter/{id} 中的id就是參數名
*      $pattern [string]要調用的過濾控制方法 過濾正則表達式
*      $patterns [array]設置多個 參數名稱=>過濾正則表達式 數組
*返回值:null
*/
Route::pattern($key, $pattern);//設置全局條件,只影響設置后所有路由。
Route::patterns($patterns);//設置多個全局條件,
 
/*
******* 這里主要是針對 where 函數作說明,
******* 由于這個參數屬于 Illuminate\Routing\Route(路由單點對象),要**常規(guī)路由才能獲得。
*
*參數:$name [array|string] 如果是字符串則是參數名,如果是數組則(參數名=>過濾正則)組成。
*      $expression [string|null]如果前參數為字符串,則這個為過濾正則,否則無意義。
*返回值:\Illuminate\Routing\Route對象
*/
 
Route::get(test/filter/{id},TestController@filter)->where($name, $expression = null);


相關推薦:


蘇州思科認證培訓   蘇州思科認證培訓班   蘇州思科認證培訓學校

體驗課預約試聽

倒計時

12:00:00

課程熱線:

13013833891
在線咨詢

客服在線時間:早上9點~下午6點,其他時間請在線預約報名或留言,謝謝!

蘇州思科認證

免費體驗課開班倒計時

11: 41: 09

稍后會有專業(yè)老師給您回電,請保持電話暢通

咨詢電話:13013833891
推薦機構 全國分站 更多課程

本周僅剩 個試聽名額

請鍵入信息,稍后系統(tǒng)將會把領獎短信發(fā)至您的手機

申請試聽名額

已有10254人申請免費試聽

01電話咨詢 | 13013833891

QQ:
加盟合作:0755-83654572