CSHTML 壞死Bug事件
今天的事件發生在後台網頁
是微軟的cshtml
單純新增js的方法
卻導致整個畫面死掉
第一次有程式退步的感覺
這次的需求很簡單
在原本的js新增一個方法
然後在cshtml呼叫即可
根據開放封閉原則
新增不可能壞東西吧
萬萬沒想到
打開F5進入偵錯模式
程式馬上報錯
我差點從椅子上面跌下來
首先懷疑js被瀏覽器快取
我的改動沒有被更新
但是打開瀏覽器的F12
程式碼的確有新增
再仔細看一下錯誤訊息
竟然是404,另外一隻API 找不到
真的是見鬼了
我新增A,跟我說B找不到
馬上打開git看一下commit的紀錄
的確只有新增,沒有刪除
怎麼想都不應該造成原本的功能壞掉
於是我先把新的commit做revert
再次打開F5,還是壞的
真的是三觀毀壞
打開測試環境的後台看一下
網站還是好好的
令我傻在原地
404的報錯
不可能是資料庫連線的問題
但同樣的程式碼
local不行,stage卻可以
會是什麼原因
難道是因為網址不同?
再仔細看一下cshtml內
那道API是透過ajax呼叫
路徑是使用相對路徑
再看一下我的網址
對比測試環境
多了一個/index
這下才恍然大悟
猶記得C#的MVC
預設就是走index
所以 / 和 /index 會是同樣的畫面
但是因為多了一層/index
導致API呼叫的相對路徑就會抓錯
把/index刪掉
在local端就可以正常debug了
果然,最基礎的還是最重要
下回預告
簡單的表格和搜尋
在iPhone上面竟然沒用
2023的jQuery
是否還能再跨瀏覽器?
下一回
iOS 網頁失靈事件
本部落格所有文章除特別聲明外,均採用 CC BY-NC-SA 4.0 許可協議。轉載請註明來自 Frank's Talk!