在凡客看到CSS和JS載入均使用.ashx , .ashx 是什麼技術?

來源:互聯網
上載者:User

若單獨運行css.ashx,則提示以下資訊:

css.ashx、js.ashx:用法:

css.ashx?href=A,B,C

js.ashx?href=A,B,C

同級目錄中的不同檔案,以方括弧括起來

css.ashx?href=[A/A1,A2]意思為串連~/A/A1.css與~/A/A2.css

js.ashx?href=[B/B1,B2]意思為串連~/B/B1.js與~/B/B2.js

混合用法

css.ashx?href=A,[B/B1,B2],C/C1意思為串連~/A.css與~/B/B1.css與~/B/B2.css與~/C/C1.css

未找到檔案時的處理:

如果未找到A.CSS,在最終輸出結果中會出現/CSS Combiner 未找到檔案~/A.css/

如果未找到A.JS,在最終輸出結果中會出現//JS Combiner 未找到檔案~/A.js

12/06/2012 10:22:41.266 上午

請問是什麼原理? 還是 .net 自身的一個動態載入技術?

回複內容:

若單獨運行css.ashx,則提示以下資訊:

css.ashx、js.ashx:用法:

css.ashx?href=A,B,C

js.ashx?href=A,B,C

同級目錄中的不同檔案,以方括弧括起來

css.ashx?href=[A/A1,A2]意思為串連~/A/A1.css與~/A/A2.css

js.ashx?href=[B/B1,B2]意思為串連~/B/B1.js與~/B/B2.js

混合用法

css.ashx?href=A,[B/B1,B2],C/C1意思為串連~/A.css與~/B/B1.css與~/B/B2.css與~/C/C1.css

未找到檔案時的處理:

如果未找到A.CSS,在最終輸出結果中會出現/CSS Combiner 未找到檔案~/A.css/

如果未找到A.JS,在最終輸出結果中會出現//JS Combiner 未找到檔案~/A.js

12/06/2012 10:22:41.266 上午

請問是什麼原理? 還是 .net 自身的一個動態載入技術?

就是個handler頁面,看他這麼寫無非就是伺服器組建處理了一下資源檔。

href=[/public/autocomplete.css],[/index/global.css,header-top.css,header-logo.css,header-nav.css,footer.css,indexcontentv10.css]

把多個css一起在後台讀出來然後用一次http請求返回到前台。

&v=20130712115604

這個參數應該是為了防止瀏覽器緩衝的問題,特意設定的參數

&compress

看這個參數猜測後台應該是把所有的css讀取、拼接然後再壓縮返回到前台。

做這些工作可以最佳化資源檔的網路傳輸:1.減少http請求次數2.減小css檔案體積

Tengine可以很好的實現js/css合并

請看這個連結 http://msdn.microsoft.com/zh-cn/library/bb398986(v=vs.100).aspx ,有詳細解析。
實際上原來的aspx也會在預設情況下被註冊為一個hanlder,ashx和aspx的區別在於aspx為了開發方便添加了很多組件、屬性、事件等,而ashx相對底層,因此比較簡單,優點就是快速。
實際上凡客這樣做是不對的,重複發明輪子,應該採用第三方的架構來實現Js和Css的打包壓縮。
另外Asp.Net 4.5已經內建了一個這樣的架構,有興趣可以看 http://weblogs.asp.net/scottgu/archive/2011/11/27/new-bundling-and-minification-support-asp-net-4-5-series.aspx 。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.