鍍金池/ 問答/HTML5  HTML/ SPA直接訪問url的問題

SPA直接訪問url的問題

我做的都是spa,一上來(lái)直接訪問的是localhost:8080/這么玩得,
但是如果瀏覽器直接輸一個(gè)url是localhost:8080/login,然后就直接向后臺(tái)server請(qǐng)求了,回來(lái)就404了, 作為spa后臺(tái)肯定不知道login這些玩意啊,都是前端搞定的,這種情況應(yīng)該用什么方法解決呢?
求思路和相關(guān)關(guān)鍵詞,謝謝諸位

后臺(tái)是express,前面是vue.js

回答
編輯回答
編輯回答
夏木

你使用的是router的history模式,改成hash是一種方式,這樣的話前臺(tái)頁(yè)面就沒有localhost:8080/login這種url了,就變成localhost:8080/#login

還有一種方式就是server上攔截404請(qǐng)求,默認(rèn)返回首頁(yè)html文件

2017年12月11日 23:24
編輯回答
溫衫

路由模式換成hash

2017年6月25日 11:34
編輯回答
淡墨

配置hash路由,這樣就不會(huì)走到后端了,如果你使用的是vue-router的話,應(yīng)該默認(rèn)的就是hash路由,同事你在配路由的時(shí)候還要配一個(gè)默認(rèn)路由,這樣無(wú)法識(shí)別的時(shí)候,直接redirect到別的path

2018年1月6日 10:11
編輯回答
故林

需要后端配合,spa只有一個(gè)頁(yè)面,而訪問其他頁(yè)面肯定都是404,所以后端可以讓404的之后直接重定向到index.html。

2018年4月19日 15:59