API и веб-приложение в одном проекте

РЕДАКТИРОВАТЬ:

Я выбрал путь разделения Api и Web Application. Однако проблема с межсайтовыми запросами остается. Вопрос под этим редактированием сейчас не имеет никакого значения, за исключением того факта, что проблема межсайтовых запросов остается. Я оставлю вопрос ниже для справки и, возможно, чтобы помочь другим решить, что делать в этой ситуации.

/РЕДАКТИРОВАТЬ

Недавно я начал работу над веб-приложением, и, намереваясь также разработать мобильные приложения, я решил создать публичный API. Вот некоторые из проблем, с которыми я столкнулся:

API на самом деле обслуживается с субдомена (api.example.com), что является проблемой, потому что я не могу делать межсайтовые запросы. Единственное решение, которое я придумал, это добавить маршруты для обоих api.example.com и не-API-маршруты, чтобы я мог совершать звонки без межсайтовых запросов, что на самом деле привело бы к большому количеству избыточностей, и это не тот маршрут, который я хотел бы пройти (без каламбура).

Вот небольшой фрагмент, который устанавливает маршруты для API (я использую фреймворк Laravel):

Route::group(['domain' => Config::get('globals.API_URL_RAW'),
'namespace' => 'MySite\Api\v1',
'prefix' => 'v1'], function(){

Route::post('/register', 'RegistrationController@store');

}

Итак, как вы можете видеть, у меня есть маршруты, которые отвечают на запросы от api.example.com/v1/register например. В веб-приложении я использую ajax для доступа к этому API, но доступ к API ограничен из-за межсайтовых запросов.

Вероятным решением будет полное разделение веб-приложения и API, но как мне тогда решить проблему межсайтовых запросов?

В запрошенном ресурсе отсутствует заголовок «Access-Control-Allow-Origin». Происхождениеhttp://example.comПоэтому не допускается доступ.

Кроме того, если бы я отделил API от веб-приложения, мне пришлось бы обрабатывать JSON в своем веб-приложении (API возвращает объекты JSON), тогда как теперь я могу просто работать с реальными объектами.

Я очень новичок в разработке веб-API, и я чувствую, что я не получаю что-то здесь, поэтому любая помощь будет принята с благодарностью.

РЕДАКТИРОВАТЬ:

На самом деле есть очень похожий вопрос, решающий ту же проблему, который можно найти здесь:

Использование моего собственного Laravel API

Однако я думаю, что проблема с межсайтовыми запросами не является проблемой для спрашивающего, потому что его API обслуживается из того же домена.

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector