有什麼設定可以讓 ng serve 後,不會是用預設路徑開啟

大家好~

不知道大家在開發專案的時候會不會遇到一個狀況是,

專案實際擺放的路徑與ng serve起來的路徑不一致,

造成API無法正常運作的問題?

例如,一般ng serve起來的路徑都會像是這樣:http://localhost:4200/#/login

但實際擺放的路徑可能會是這樣:http://xxx.xxx.xxx/xxx/#/login

而在API中,可能會針對/xxx這個路徑底下的頁面做一些設定或是設定一些header之類,

但由於開發中的路徑並無/xxx這個路徑,導致API無法正常運作,

找了一些資料 說是 --host 參數可以設定,

但我像這樣ng serve --host localhost/ref使用時,是會Error的

getaddrinfo ENOTFOUND localhost/ref
Error: getaddrinfo ENOTFOUND localhost/ref
    at errnoException (dns.js:28:10)
    at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:73:26)

所以小弟想請問,有沒有什麼方式可以達成這種需求的呢?

好像沒有可以設定預設開啟的網址的選項

那就只能請後端工程師改了XDDD

這個跟後端有什麼關係? 不是很懂為什麼多一層會造成 api 有問題

因為他在某個路徑下有塞cookie,但因為我這邊沒有這個路徑,所以不work@@

最後用保哥的方法解決了
https://blog.miniasp.com/post/2017/02/05/Setup-proxy-to-backend-in-Angular-CLI.aspx?fref=gc

這功能應該是 @leochen0818 要的吧

Adding SubDirectory to ng serve #4570

ng serve --base-href /bice/

ng build --deploy-url=bice/

1個讚

可以是可以啦~~

但會變成其他資源找不到XDDD

個人覺得還是proxy的setting比較能完美解決這個問題。

無論如何,非常感謝您抽空回覆!!