Я делаю многостраничное приложение с несколькими страницами, выполняющими запросы ajax. Я хочу убедиться, что каждый запрос запускается на определенной странице (а не на каждой странице).
Например, следующие вызовы будут вызывать каждую страницу в моем экспресс-приложении:
$(document).ready(function() {
$.getJSON('/api/skills/user')
.then(selected => {
console.log("js.2. pre-populate GET /api/skills/user/")
})
.catch(err => {
console.log("$.getJSON('/api/skills/user/') failed")
})
}
Я пытаюсь сделать этот вызов только на определенной странице, сначала проверив, соответствует ли строка URL-адресу:
$(document).ready(function() {
if(window.location.toString().includes("profile")) {
$.getJSON('/api/skills/user')
.then(selected => {
console.log("js.2. pre-populate GET /api/skills/user/")
})
.catch(err => {
console.log("$.getJSON('/api/skills/user/') failed")
})
}
}
Однако, если я хочу сделать этот вызов на страницахс URL-адресами, такими как /profile/...
, но не profile/.../matches/...
, этот подход не работает (так как он находит profile
в /profile/...
и profile/.../matches/...
).
Как мне поступить так?Я мог бы сравнить URL с регулярным выражением, но это не очень хороший способ сделать это.
Существует ли стандартный способ выполнения вызова ajax для конкретной страницы?