標籤:http 使用 os 資料 io art
早前的一兩天《Linux.NET學習手記(8)》發布了,這一篇主要是講述OWIN架構與OwinHost之間如何根據OWIN協議進行通訊構成一套完整的系統。文中我們還直接學習如何直接操作OWIN字典,從OwinHost中拿資料進行直接使用。
不過文章發布之後,有朋友提示我,文章出了點細節上的問題,我細細度量之後,發現果然出了情況,並且還不是一個無關緊要的小問題,本打算把那篇文章下線,待修改好之後再重新上線,網友“王爺”提醒到,可以為文章專門寫上一篇補充文,這樣頗有手稿的感覺。考量之下我接受了王爺的建議,“Linux.NET學習手記”本就是個人學習的記錄,也算得上是手稿的一種。於是就有了這一篇的補充文。
《Linux.NET學習手記(8)》中主要犯了以下這幾個錯誤:
1、誤將“Microsoft.OWIN”當“OWIN”,使“OWIN”的概念擴大。
2、“Middleware“其實並不是OWIN必須的
3、適配器不是這樣用的
1、“Microsoft.OWIN”不等於“OWIN” 在《Linux.NET學習手記(8)》中,雖然文中並沒有任何一個地方指出“Microsoft.OWIN”是“OWIN”這麼一個說法,但是文章的寫作手法中,卻非常容易的把讀者引入歧途,讓讀者誤以為“OWIN”其實就是“Microsoft.OWIN”。什麼是“OWIN”,"OWIN"說白了就是一個協議,一個字典,裡麵包含了Environment,“OWIN.dll”其實也不過是一個介面,沒有更多。所有根據“OWIN”所派生出來的東西已經不是OWIN自己了。 因此,在《Linux.NET學習手記(8)》應把所有的“OWIN”改為“Microsoft.OWIN”,指明這是針對“Microsoft.OWIN”所誕生出的東西雖然OWIN協議並不屬於任何的一方,但是出現得最早的關於OWIN協議的實現是微軟的”Microsoft.OWIN“,因此目前許多的OWIN架構都是基於”Microsoft.OWIN“來實現。而”Startup“、”Configuration“、”Middleware“等組件是”Microsoft.OWIN“所提出的知識點,因此這些OWIN架構也就自然而然的會出現這一類的事物來。
因此,我們文中說到”轉動我們的鑰匙“,其實是轉動”Microsoft.OWIN“的鑰匙,而不是整個”OWIN“大門的鑰匙。
3、適配器的真正用法
上一節中已經說得非常清楚了,目前現存的OWIN架構都是針對“Microsoft.OWIN”所締造出來的架構,因此這些OWIN架構與Katana之間是無縫的串連,根本就無需適配器這一類型的玩意,而Jexus則不同,適配器這一說法是Jexus針對這些基於“Microsoft.OWIN”所實現出來的OWIN架構能夠在Jexus.OwinHost中使用所誕生出的組件(感謝Jexus原作者的提醒)
本文來自http://www.1314721.com.cn/