1、問題描述:
最近使用miniui做了一個後臺管理系統,打開瀏覽器調試時,總髮現一堆無關的請求,結構大致是:poll?transport=longpoll&connection.....一直不停的刷,看着很煩人。起初以爲這是miniui的數據請求沒處理好,網上了解之後,才發現這是VS 2013的 Browser Link 功能。
2、Browser Link瞭解
Browser Link 是連接VS和瀏覽器之間的通道,這個特性在VS2013中是默認開啓的。當web程序運行的時候,就會註冊一個HttpModule到asp.net的生命週期中,這個HttpModule的功能就是在每個輸出的網頁中,注入一段<script>腳本,這段腳本的作用就是負責VS IDE和網頁間的通訊。
網上瞭解到Browser Link的功能是:當我們修改VS中的文件時,然後點擊refresh按鈕或者Ctrl+Alt+Enter刷新這個頁面. 它會立即刷新所有的瀏覽器。我試了一下,確實可以觸發所有瀏覽器重新請求頁面,看到修改內容。
3、判斷Browser Link功能是否開啓?
看見一對無用的poll?transport...請求,也大概可以確定是開啓狀態了。
瀏覽器中右鍵查看頁面的源代碼,檢查頁面html源碼底部的script塊.如果有下面的script代碼,就說明Browser Link功能開啓了。
<!-- Visual Studio Browser Link -->
<script type="application/json" id="__browserLink_initializationData">
{"appName":"Firefox","requestId":"861592d477c64fd590b602a9f006c074"}
</script>
<script type="text/javascript" src="http://localhost:2968/f26bea4f8e6a45868431324e7994cd75/browserLink" async="async"></script>
<!-- End Browser Link -->
4、關閉Browser Link
(1)在toolbox(工具欄)上去掉勾選”Enable Browser Link”(啓動瀏覽器鏈接)
(2)通過修改web.config文件來關閉Browser Link功能
<appSettings>
<add key="vs:EnableBrowserLink" value="false"/>
</appSettings>