• Как должна работать интеграция VK ID в SPA в описанном случае?

    @Vocler Автор вопроса
    Думал об этом, но в итоге отказался т.к. мне кажется неправильным использовать QUERY параметры для передачи данных от сервера к клиенту. Они же были созданы для передачи данных от клиента к серверу.
    Написано
  • Как должна работать интеграция VK ID в SPA в описанном случае?

    @Vocler Автор вопроса
    Василий Банников, Спасибо, про куки я забыл. Сделал передачу токена через них.
    А кто тебе запрещает отдать в ответе страничку с сообщением типа "аутентификация прошла успешно" с последующим редиректом через js?

    JS-страница для редиректа показалась мне лишней поэтому я просто возвращаю 302 код с заголовком `Set-cookie`:

    HTTP/1.1 302
    Server: nginx/1.23.2
    Date: Wed, 20 Mar 2024 18:48:06 GMT
    Content-Length: 0
    Connection: keep-alive
    Vary: Origin
    Vary: Access-Control-Request-Method
    Vary: Access-Control-Request-Headers
    Set-Cookie: BearerToken=*ТУТ ТОКЕН*; Path=/
    Location: /
    X-Content-Type-Options: nosniff
    X-XSS-Protection: 0
    Cache-Control: no-cache, no-store, max-age=0, must-revalidate
    Pragma: no-cache
    Expires: 0
    X-Frame-Options: DENY
    Написано
  • Как должна работать интеграция VK ID в SPA в описанном случае?

    @Vocler Автор вопроса
    Тот же самый токен


    Если mysite.com/redirect просто вернёт токен то пользователь просто увидит перед собой этот самый токен и всё:
    65e39a52d65d9890698453.png

    Это очевидно не то чего я хочу. Я хочу что-бы после логина пользователь увидел перед собой приложение.

    при обычной аутентификации


    При обычной аутентификации я из JS скрипта отправляю запрос на получение токена, бекенд возвращает этот токен и я могу в том-же самом JS скрипте обработать полученный ответ. А в случае с VK ID я перенаправляю сам браузер пользователя на путь mysite.com/redirect.

    Я коряво объяснил разницу потому что не знаю как с терминологической точки зрения правильно описать различие между запросом который отправляется из скрипта через fetch() и запросом который отправляет браузер при переходе на какую-либо страницу.

    и отправить пользователя дальше


    Насколько я знаю протокол HTTP не позволяет мне отправить ответ "Вернуть данные и перенаправить". Можно вернуть либо редирект с кодом 301 либо данные, но не данные с редиректом.
    Написано
  • Как отправить POST запрос в codeception при помощи кнопки?

    @Vocler Автор вопроса
    Евгений Мусонов, ну если костыль считать решением то да. Просто эмулирую запрос через $I->sendAjaxPostRequest()
  • Ошибка IndexOutOfRangeException: Array index is out of range, что делать?

    @Vocler
    В 27 строке ты обращаещься к несуществующему элементу массива (капитан очевидность). Проверь правильный ли индекс передаешь

    И оберни код в нормальный код-блок (сверху в редакторе), разбираться в таком тексте нет желания
  • Почему VirtualBox не видит VT-x если запущен Hyper-V?

    @Vocler Автор вопроса
    vvmtutby, верно,
    VBoxManage setextradata " *Тут имя виртуалки* " "VBoxInternal/NEM/UseRing0Runloop" 0

    не помог.

    Проверил .vbox файл, строка
    <ExtraDataItem name="VBoxInternal/NEM/UseRing0Runloop" value="0"/>

    Там есть, так что команда правильная. Видимо дело не в UseRing0Runloop
  • Почему VirtualBox не видит VT-x если запущен Hyper-V?

    @Vocler Автор вопроса
    vreitech,
    значит дело в экспериментальности этой фичи или в том, что суть этой фичи неправильно понята вами или неправильно выражена разработчиком.

    (с) Капитан очевидность

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

    здесь вы в лучшем случае дождётесь советов вроде "поставьте чистую систему и попробуйте с нуля", "обратитесь в поддержку oracle", "ознакомьтесь с документацией".


    В таком случае пускай вопрос висит, пока кто-нибудь не найдет решение, либо пока Oracle не доведут фичу до ума. В любом случае расписываться в своем бессилии - это не ответ.
  • Почему VirtualBox не видит VT-x если запущен Hyper-V?

    @Vocler Автор вопроса
    vvmtutby, включил, перезагрузил, не помогло

    P. S: Форум лежит, но я его уже читал до того как задать вопрос. Решения не нашел
  • В каком месте происходит ошибка с кодировкой?

    @Vocler Автор вопроса
    ThunderCat, окей, а почему берется именно windows1251, а не Windows-1253, КОИ8 или ASCII?
    Когда между ними происходит обмен данными, то, не смотря на то что в обоих средах кодировка стоит утф, никто точно этого не знает.

    Т.е. MySQL приняла сообщение в неизвестной кодировке и решила прочитать его как Windows1251? Почему, если в её настройках стоит UTF-8?

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

    @Vocler Автор вопроса
    Вопрос в том почему я должен явно указывать кодировку utf8, если все файлы и так в ней. Почему без её указания берется какая-то левая кодировка?
  • Как работает password_hash?

    @Vocler
    Adamos,
    1) Если строка сначала хешируется с солью, а потом записываться в виде СОЛЬ+ХЕШ то в чем вообще смысл соли? Ведь злоумышленник получив данные получит и её.

    Если я верно понимаю предназначение соли, то она нужна для того что-бы сделать перебор хешей невозможным при условии ято злоумышленник не знает соль, но тут она прямо рядом с хешем пишется. Такой подход разве что против радужных таблиц сработает.

    2) Если строка хешируется с солью, но при этом соль никуда не записывается то как password_verify её узнает?
  • Как применить только одну миграцию в Yii2?

    @Vocler Автор вопроса
    Если в проекте хаус - не используйте миграции. Либо делайте как положено. Если не готовы весь проект менять - выделите миграции по модулям «blog, user, comment». И подключайте их как отдельные миграции (как на модуль). И уже какая то часть миграций точно рабочая. Потом восстановите другие.

    А так как вы пытаетесь - толку нет. Никто ваши костыли не будет повторять. Кроме того вы сейчас замучаетесь с этим и это будет без толку. Если миграции не работают по yii migrate, то можете выкинуть эти миграции или наладить их. Другого варианта нет.


    Прочитайте внимательно нить комментариев, никто эти костыли и не должен повторять.
    И да - я уже третий раз пишу: я понимаю что их нужно наладить. Но времени на это банально нет, если я скажу менеджеру что мне нужны дополнительные пару часов что-бы наладить 70-80 миграций то он мне откажет.
  • Как применить только одну миграцию в Yii2?

    @Vocler Автор вопроса
    Можно просто удалить эти записи и миграции буду показываться как не применённые.
    Можно изменить дату в назывании миграции, указать более новую, при этом надо переименовать сам класс в миграции.


    Вот это как вариант тоже подойдет.

    Что стоило создать новые миграции?

    Отредактировать миграцию?


    5 - это условное число. На самом деле этих таблиц реально много, и на их правку миграций уйдет куча времени.

    Тот способ, который Вы искали, приводит как раз к таким последствиям)))


    Так в данный момент я и не ставлю задачу привести миграции в порядок, только развернуть локальную копию БД. Рефакторинг миграций буду проводить уже позже.

    В документации всё предельно ясно написано. Если бы был официальный способ делать так, как Вы этого хотели - разработчики описали бы это в документации.


    Мне и неофициальный подойдет. Вон выше даже правильный ответ дали.
  • Как применить только одну миграцию в Yii2?

    @Vocler Автор вопроса
    Дмитрий, я попытаюсь объяснить ситуацию с которой столкнулся, но получится много букв.

    Есть проект. Для его нормальной работы нужно 5 таблиц (на самом деле намного больше, но для примера понадобится только пять):
    user
    post
    comment
    product
    manufacture


    Есть следующие миграции, суть которых понятна из названия:
    m190715_113316_create_user_table.php
    m190715_113327_create_comment_table.php
    m190715_113338_create_manufacture_table.php


    Развернуть локальную БД просто прописав yii migrate я не могу, двух таблиц (post и product) не хватит.

    Так-же в проекте есть дамп database.sql, в котором есть таблицы user, post и product.

    Развернуть локальную БД импортировав этот дамп я тоже не могу, таблиц comment и manufacture не будет.

    Импортировать БД и потом применить миграции тоже нельзя - конфликт из-за того что таблица user уже существует. В связи с этим решил сначала импортировать БД, а потом применить только миграции с comment и manufacture. Тут мне и понадобилось применить миграции "точечно", в отрыве от других.

    Еще учтите что половина миграций впринципе нерабочая (добавляет колонки к каким-то несуществующим таблицам, которые в проекте не используются. Видимо были раньше, затем модели удалили, а миграции забыли), а снести все это безобразие и написать нормально нельзя, проект ко мне попал чуть-ли не перед дедлайном и должно быть готово уже вчера.

    Спойлер
    этот пост выглядит так, как-будто я сюда не за советом пришел, а поплакаться)
  • Как применить только одну миграцию в Yii2?

    @Vocler Автор вопроса
    Дмитрий, не откатить, а применить.

    Да, после нее есть еще миграции, но если возникнут какие-то ошибки буду разгребать руками.

    и что Вы хотите изменить при помощи миграции


    В той что я хочу применить - просто создание таблицы.

    Вы уверены, что то, что Вы хотите сделать будет лучшим решением?


    Это ужасное решение, но оно самое быстрое, а это было критично
  • Как применить только одну миграцию в Yii2?

    @Vocler Автор вопроса
    Дмитрий, ага, а еще можно провести рефакторинг и написать нормальные миграции что-бы не приходилось пользоваться такими костылями. И как это я сам не догадался?

    Вы должны понимать что такая возможность есть не всегда, и как-бы если я задаю вопрос "как сделать X" закрывать его со словами "тебе это не нужно" несколько неккоректно мягко говоря.
  • Как применить только одну миграцию в Yii2?

    @Vocler Автор вопроса
    Максим, похоже это единственный рабочий способ
  • Как применить только одну миграцию в Yii2?

    @Vocler Автор вопроса
    Дмитрий, нет, по крайней мере я не нашел.
  • Как применить только одну миграцию в Yii2?

    @Vocler Автор вопроса
    Максим, зачем вы мне цитируете документацию и повторяете мною сказанное? Я и сам вкурсе что более поздние миграции откатываются, о чем и написал в первом комментарии.

    В том то и дело что мне нужно применить миграцию, не применяя и не откатывая ничего, как-будто других миграций вообще не существует, а такого способа в документации не описано.

    Если бы мне нужен был функционал migrate/to с откатом поздних миграций то вопроса я бы не создавал.
  • Как применить только одну миграцию в Yii2?

    @Vocler Автор вопроса
    Я уже пробовал migrate/to, но он пытается откатить миграции которые произошли после той, которую я пытаюсь применить.