国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

利用fis3自動化處理asp.net項目靜態資源時遇到的一個編碼問題

2019-11-14 14:21:27
字體:
來源:轉載
供稿:網友

fis3是一款強大的前端自動化構建工具,提供了很多非常實用的功能,具體參考http://fis.baidu.com/,使用該工具需要安裝node環境。
最近在部署網站的時候嘗試了一下使用該工具對前端資源進行處理,因為 FIS3 的構建不會修改源碼,而是會通過用戶設置,將構建結果輸出到指定的目錄,所以用起來很放心。在使用的過程中發現了一個問題,就是本來正常的網站,通過fis3處理后,出現了中文亂碼情況,這個問題不解決就沒法使用了。首先,查看了一下用fis3處理前后的文件編碼,發現未處理前是帶Bom的utf8格式(因為是在windows環境中使用visual studio開發的asp.net項目,所以在保存的時候,vs會自動將文件存為帶Bom的utf8格式),處理后變為不帶Bom的utf8格式,看來是fis3對utf8格式的文件進行了處理,去除了文件中的Bom頭,于是找到fis3模塊的安裝目錄(可以通過npm root -g命令找到node全局模塊的安裝目錄,如果安裝了fis3就會在該目錄中找到fis3模塊對應的源文件目錄),打開lib目錄下的util.js文件,發現在667行的_.readBuffer方法中對帶Bom的utf8格式文件的內容刪除了第一個字節。

if (buffer.charCodeAt(0) === 0xFEFF) {    buffer = buffer.substring(1);}

于是,為了與vs保存的文件格式一致,在這里注釋掉這句代碼,使處理后的文件保留BOM頭。經過修改后重新部署,發現依然是亂碼,這下有點困惑了,格式都該一致了,怎么還不行呢,難道是網站的配置有問題嗎,于是看了一眼web.config文件,對請求與響應格式也都進行配置,

<globalization requestEncoding="UTF-8" responseEncoding="UTF-8" />

并且網頁中也寫了 <meta http-equiv="Content-Type" Content="text/html;charset=utf-8"> ,既然這兩個地方都沒問題,那么是不是iis的問題呢,于是打開iis,在“.NET全球化”里面發現文件的編碼是gb2312,將其改為utf8,重新部署,這回問題總算解決了。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 巩义市| 育儿| 睢宁县| 湖北省| 都兰县| 博湖县| 和龙市| 华池县| 龙泉市| 佛冈县| 郸城县| 敦煌市| 建德市| 曲靖市| 改则县| 乌鲁木齐市| 大兴区| 长沙市| 云梦县| 库尔勒市| 昌图县| 石嘴山市| 南召县| 稻城县| 阿勒泰市| 榆树市| 遂平县| 恩平市| 福建省| 吉林省| 原平市| 大兴区| 大理市| 阳山县| 浑源县| 久治县| 江陵县| 吉首市| 临沭县| 光山县| 通城县|