Asp.Net Core 入門(九)—— 環境變量 TagHelper

  咱們在以前講Program.cs文件作了什麼的時候,提到啓動CreaeDefaultBuilder會獲取環境變量來作一些判斷之類的操做。那麼咱們的Taghelper也能夠使用「ASPNETCORE_ENVIRONMENT"變量來設置在什麼環境下加載什麼庫文件。能夠經過environment標籤來使用。css

    <environment include="Development">
        <link href="~/lib/twitter-bootstrap/css/bootstrap.css" rel="stylesheet" />
    </environment>

    <environment exclude="Staging,Production">
        <link href="~/lib/twitter-bootstrap/css/bootstrap.css" rel="stylesheet" />
    </environment>

  include屬性接受將單個環境環境名稱以逗號分隔的形式生成列表。在<environment>tag helper上,還有exclude屬性,當託管環境與exclude屬性值中列出的環境名稱不匹配時,將呈現標籤中的內容。bootstrap

  咱們在實際開發過程當中,可能開發環境用的是本地的庫,生產環境用的是cdn,因此咱們能夠這麼作瀏覽器

    <environment include="Development">
        <link href="~/lib/twitter-bootstrap/css/bootstrap.css" rel="stylesheet" />
    </environment>

    <environment exclude="Development">
        <link href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
    </environment>

  值得注意的是,<link>元素上的」integrity「屬性,全稱是SubResource Integrity(SRI),用於檢查」子資源完整性「,它是一種安全功能,容許瀏覽器檢查被檢索的文件是否被惡意更改。安全

  最後總結一下使用環境變量 tag helper,它能夠使得咱們生產環境在引用的CDN訪問失敗的狀況下,回退到咱們指定的另外一個源或者本地庫。具體作法以下ui

    <environment exclude="Development">
        <link href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous"
              asp-fallback-href="~/lib/twitter-bootstrap/css/bootstrap.css"
              asp-fallback-test-class="sr-only"
              asp-fallback-test-property="position"
              asp-fallback-test-value="absolute"
              asp-suppress-fallback-integrity="true"
              >
    </environment>

  使用asp-fallback-href屬性指定回退源。asp-fallback-test-class 判斷失敗時用到的class,asp-fallback-test-property 判斷失敗時用到的屬性,asp-fallback-test-value 判斷失敗時用到的值。經過將」asp-suppress-fallback-integrity「屬性設置爲false,就能夠關閉瀏覽器下載的文件完整性檢查。spa

相關文章
相關標籤/搜索