因此,当我导航到URL时,我打开了一个单页角应用程序。如果我使用链接,在应用程序内移动很好 - 新的URL加载就好了。但是,如果我在浏览器URL窗口中输入一个新URL并按Enter键,则后端框架(在我的情况下为Laravel)会尝试解析该URL。
我如何
拦截网址更改,以便我可以将其简单地指向应用中的相应状态
告诉Laravel忽略新网址并让角度应用处理它
由于
答案 0 :(得分:2)
如果我理解你的问题,你不希望Laravel处理它,因为路由是在javascript中定义的,而不是在服务器端定义的。如果是这种情况,您可以使用通配符解决它。
让我们说在你的laravel的路线中你有这一行加载你的应用程序,视图,javascripts等:
const fetch = require('node-fetch')
var server = 'https://example.net/information_submitted/'
var loginInformation = {
username: "example@example.com",
password: "examplePassword",
ApiKey: "0000-0000-00-000-0000-0"
}
var headers = {}
headers['This-Api-Header-Custom'] = {
Username: loginInformation.username,
Password: loginInformation.password,
requiredApiKey: loginInformation.ApiKey
}
fetch(server, { method: 'GET', headers: headers})
.then((res) => {
console.log(res)
return res.json()
})
.then((json) => {
console.log(json)
})
您可以使用通配符修饰符忽略已追加的任何网址,并始终为您的索引视图提供服务:
Route::get('/', 'PagesController@index');
我不确定为什么它不在最新的文档中,但您可以找到文档at Laravel 5.2 doc regarding regular expression constraints