1.為什么需要提前注冊(cè)正則?

屏幕快照 2017-03-04 上午9.37.21.png
比如這是一個(gè)標(biāo)準(zhǔn)的自定義URL
紅色Scheme部分就可以決定這個(gè)鏈接的作用。如果以自己定義的協(xié)議開頭那么走自己的下一步Matcher,如果以Http或者Https開頭就流到WebView
-
藍(lán)色Host部分控制這個(gè)鏈接的響應(yīng)類型,比如我可以有:
- 導(dǎo)航
- alert
- tab切換
- 通用鏈接和iOS URL Scheme
那么我可以將Host定義為page、alert、tab、scheme來決定這次響應(yīng)
綠色Path和Query部分決定這個(gè)鏈接的具體作用,比如這個(gè):
在工程中我有一個(gè)Signin的UIViewController那么我就,去導(dǎo)航到這個(gè)界面,并且把Query作為參數(shù)帶到SigninController中
關(guān)于正則在路由中的使用
因?yàn)楹笈_(tái)在配鏈接的時(shí)候難免會(huì)出錯(cuò),那么正則用來做校驗(yàn)。比如
以上鏈接可能寫成
WLRDemo://com.wlrroute.demo/signin/?13812345432
這是一個(gè)不合法的鏈接,那么我們就用正則去處理他
以上思考來源http://pingguohe.net/2016/11/17/decouple-tmall-app.html