MacBook-Pro-Maksim:public maksimvorozcov$ curl -I -X OPTIONS 127.0.0.1:8000
HTTP/1.1 200 OK
Host: 127.0.0.1:8000
Date: Fri, 15 Nov 2019 18:27:51 +0000
Connection: close
X-Powered-By: PHP/7.1.23
X-Blablabla: OPTIONS
Content-type: text/html; charset=UTF-8
Под каким вебсервером крутится это приложение?
Попробуйте командой вроде:
curl -I -X OPTIONS https://mail.google.com/mail/
Только, естественно, с вашим адресом.
MacBook-Pro-Maksim:project-manager maksimvorozcov$ curl -I -X OPTIONS 127.0.0.1:8000/api/events/1960aaeb-5c81-471a-bd3d-...
HTTP/1.1 405 Method Not Allowed
Host: 127.0.0.1:8000
Date: Fri, 15 Nov 2019 02:01:56 +0000
Connection: close
X-Powered-By: PHP/7.1.23
Access-Control-Allow-Origin: *
Content-Type: text/html; charset=UTF-8
Cache-Control: no-cache, private
Date: Fri, 15 Nov 2019 02:01:56 GMT
X-Debug-Token: de7df8
X-Debug-Token-Link: 127.0.0.1:8000/_profiler/de7df8
X-Robots-Tag: noindex
Allow: PUT
X-Previous-Debug-Token: f4b5a4
P.S.
CORS не просто так по дефолту запрещен, приложение возможно будет легко взломать через XSS атаку, если вы это разрешите.
По-моему сортировку лучше сделать перед коммитом.
async created() {
await this.getAll({
page: this.$route.query.page,
filter: this.$route.query.q,
sort: this.$route.query.sort
})
},
async fetch({store, params}) {
await store.dispatch('events/getAll');
}
При таком случае загрузка страницы после загрузки данных.async getAll({commit}, { page, filter, sort}) {
const res = await this.$axios.$get('events', {
params: {
page: page,
filter: { filter: filter },
sort: sort,
},
paramsSerializer: function (params) {
return qs.stringify(params, {arrayFormat: 'brackets', encode: false})
},
});
commit('SET_EVENTS', res.items)
А вы уверены, что encode: false нужен вам на всех запросах?
const res = await this.$axios.$get('events', {
params: {
filter: { filter: 123 },
}
});
http://127.0.0.1:8000/api/events?filter=%7B%22filter%22:123%7D
http://127.0.0.1:8000/api/events?filter[filter]=123
<b-input
type="search"
v-model="q"
placeholder="Поиск..."
@keydown.enter="search"
autofocus
/>
async created() {
await this.getAll({
page: this.$route.query.page,
filter: this.$route.query.q,
sort: this.$route.query.sort
})
},
async getAll({commit}, { page, filter = null, sort = null}) {
const res = await this.$axios.$get('events', {
params: {
page: page,
filter: filter,
sort: sort
}
});
commit('SET_EVENTS', res.items)
},
['@nuxtjs/axios', {
baseURL: 'http://127.0.0.1:8000/api',
paramsSerializer: function (params) {
return Qs.stringify(params, {arrayFormat: 'brackets', encode: false})
},
}],
И что у вас не работает? Такой же результат выдает?Не работает именно фильтрация из поля input. Не может распарсить такой запрос. page и sort работает