C __soapCall интересны слуяай потому что он формирует запрос но совсем не правильно. Если $params это array из нескольких елементов то первый он просто игнорирует и остальные не добавляет в тег Message а рядом типа ..
Grejtal, По сути у PHP нет router-a. Разве что в framework-ах есть URL манаджеры для красоты хотя они работают точно по такому же принциму. Всё ходится к одному. {host}/{controllerName}/{methodName}/{methodParam1}/{methodParam2}/...
То что вы хотите сделать это противоречит принципу создания URI адресов. Из вариантов только обрабатывать лишние слешы как стринг ну или устранить саму проблему почему у вас появляются куча слешей в конце.
Если проводить ну же аналогию с гулом то у них несколько картинок. Можно в этом удостовериться просто открыв консоль и проскролив сильно вниз. Сразу - загружаются картинки в максимально сжатом состоянии которые почти ничего не весят. При нажатии делается опять же запрос и стягивется картинка уже в нормальном качестве для просмотра. Если заметить. Они ничего не удаляют после скрола. в этом просто нет смысла. Лишняя нагрузка на браузер что то там вычсчитывать и удалять. Загрузил 1000 картинок в крайне маленьком разрешении и при нажатии, если полюзователю нужно - видит нормальное изображение.
на крайний случай можно просто вырубить валидацию токена для определённого метода. $this->enableCsrfValidation = false;
Хотя попробуйте ещё сохранять отдельно токен перед тем как отправлять его через запрос vuejs let _token = yii.getCsrfToken()