#api #vue.js #phalcon
#API #vue.js #phalcon
Вопрос:
Я работаю над этим сайтом. Я подписал NDA, поэтому я не могу публиковать какой-либо код, но я могу объяснить, что происходит, и опубликовать, что происходит в PHP-терминале. Есть интерфейс Vue, есть серверная часть Phalcon. Интерфейс Vue настроен с помощью серверной части Phalcon, интерфейс работает на Webpack, а Phalcon работает на php7.2. Я нахожусь на Debian Stretch. Но он показывает какое-то странное поведение. Он отправляет два запроса с интервалом в миллисекунды. Первый отправляет обратно 200 и завершается успешно, но второй отправляет обратно 404 и завершается с ошибкой, таким образом, вся операция завершается с ошибкой. То же самое происходит, если я открываю некоторые маршруты API в Postman, появляется сообщение «Класс контроллера не найден». Но, например, действие IndexController открывается нормально. Давайте просто посмотрим консоль.
[Fri Apr 19 10:13:45 2019] ::1:58106 [404]: /
[Fri Apr 19 10:14:00 2019] ::1:58110 [200]: /api/v1/users
[Fri Apr 19 10:22:42 2019] ::1:58146 [200]: //api/v1/displays?limit=allamp;include=team
[Fri Apr 19 10:22:47 2019] ::1:58148 [404]: //api/v1/displays?limit=allamp;include=team
[Fri Apr 19 11:18:03 2019] ::1:58534 [200]: //api/auth/register
[Fri Apr 19 11:18:03 2019] ::1:58532 [404]: //api/auth/register
[Fri Apr 19 12:04:05 2019] ::1:58552 [200]: //api/auth/register
[Fri Apr 19 12:04:05 2019] ::1:58550 [404]: //api/auth/register
[Fri Apr 19 12:11:50 2019] ::1:58680 [200]: //api/auth/register
[Fri Apr 19 12:11:50 2019] ::1:58682 [404]: //api/auth/register
Vue — это стабильная ветвь, но API — это ветвь разработки, однако мне сказали, что это работает.
Комментарии:
1. Похоже на проблему CORs
2. @DerekPollard Ну, я впервые слышу этот термин… Я запускаю все это на локальном хостинге. Я погуглил свою проблему CORS, и появилось не так много результатов. Можете ли вы дать мне примерный пример того, что я делаю?
3. Это относительно простое решение, вам просто нужно добавить соответствующие заголовки в ответ приложения phalcon, чтобы vue мог получить доступ к API
4. если вы посмотрите в консоли разработчика, приложение vue должно отправлять
OPTIONS
запрос перед каждым фактическим запросом5. @DerekPollard API использует JWT для обработки запросов. Ключ API и ключ Vue одинаковы. Однако Vue сообщает, что не может найти контроллер. В чем может быть причина?