Здесь ответ.
Почему xDebug не отрабатывает на кросс доменном ajax запросе? Внутри есть ссылка на stackoverflow. Оказывается кроссдоменный запрос по-умолчанию не шлёт куки в т.ч. XDEBUG_SESSION, соответсвенно на целевой домен не приходит эта кука и xdebag не в курсе что надо заняться отладкой. А в PHPStorm надо настраивать конфигурацию PHP Remote debug.
... на следующий день...
Мне удалось добится дебага только для кроссдоменных запросов GET и POST.
В Angular это настраивается так:
app.config(function ($routeProvider, $httpProvider) {
$httpProvider.defaults.withCredentials = true;
//Reset headers to avoid OPTIONS request (aka preflight)
$httpProvider.defaults.headers.post = {};
}
К сожалению, кроссдоменные запросы PUT и DELETE браузеры не пускают к северу вообще ни при каких условиях из-за withCredentials = true.
Да и фиг с ними. Переопределил их вот так:
var itemsResource = $resource(baseUrl + '/:id' + '/:action', {id: '@id'}, {
query: {isArray: false},
put: {
method: 'POST'
},
delete: {
method: 'POST'
}
});