微擎url模式解讀 URL路由 建立

2021-10-13 13:40:01 字數 1372 閱讀 2375

[toc=1,4]

####url路由

入口指令碼程式獲取到到url中相關的get引數,解析後進行許可權判斷,然後呼叫相應的控制器處理這個請求。該過程就被稱為url路由(routing)。

####解析路由

#####位址url位址路由

當傳入的url請求中包含乙個名為 **c**、**a**、**do**(可選) 的 get 引數,它即被視為乙個路由,例如:

則會路由至 **/web/source/platform/menu.ctrl.php** 檔案中

#####模組url位址路由

當傳入的 **c** 值為 「site」, **a** 值為 「entry」時則是乙個模組路由,例如:

則會路由至 **/addons/we7_demo/site.php** 檔案中的 **dowebthemeset()** 方法。

則會路由至 **/addons/we7_demo/site.php** 檔案中的 **domobilelist()** 方法。

####約定及使用

get 引數中的 **c**、**a**、**do**為微擎系統的路由引數,應當避免與系統引數衝突,在程式中可以使用 **$controller**、**$action**、**$do**來獲取對應的路由三個引數

####建立乙個url

微擎提供乙個建立url的函式 **url($segment, $params = array(), $noredirect = false)** , 路由的表示式以斜槓「/」的方式組織,每個以斜槓分隔的片段都是指向某一控制器(controller)、操作(action)或是行為(do)。

第二個引數則是以陣列的形式表示url中的querystring。例如:

//生成此位址

//echo url('site/entry/themeset', array('m' => 'we7_demo'));

echo url('mc/home');

模組中二次封裝了系統的 **url()** 函式,使用時變的更加簡單,例如:

class we7_demomodulesite extends wemodulesite {

public function domobileindex() {

echo $this->createmobileurl('home');

public function domobilehome() {

//上面domobileindex()生成的鏈結會進入到這裡

publci function dowebindex() {

echo $this->createweburl('home');

public function dowebhome() {

//上面dowebindex()生成的鏈結會進入到這裡

微擎url模式解讀 微擎 URL 路由

入口指令碼程式獲取到到url中相關的get引數,解析後進行許可權判斷,然後呼叫相應的控制器處理這個請求。該過程就被稱為url路由 routing 約定及使用get 引數中的 c a do為微擎系統的路由引數,應當避免與系統引數衝突,在程式中可以使用 controller action do來獲取對應...

生成微博授權URL

目錄2.生成微博授權url介面 3.測試生成微博授權url介面 2.2 新增子路由 oauth urls.py from django.urls import path from import views urlpatterns 2.3 在syl settings.py中新增應用 2.4 在syl ...

微博授權URL介面

2.2 新增子路由 oauth urls.py from django.urls import path from import views urlpatterns 2.3 在syl settings.py中新增應用 2.4 在syl urls.py主路由中新增 urlpatterns path o...