php

Cеминар по Программированию/Бесплатные курсы c нуля 2024: Паскаль, PHP, JavaScript Сообщество. Онлайн - как начать

Внимательно ознакомься с текстом ниже (не зря же мы его писали и периодически обновляем! ;), если темы обучения подойдут - ответь на вопросы, которые встретятся ниже, в одном из пунктов.

1. О сообществе

IFF -- это сообщество, направленное на свободный обмен знаниями и улучшение условий такого обмена.

Сейчас у нас есть два направления:

php Сервисный слой - что это такое, как создается

Причина выделения сервисного "слоя" состоит в том, что отдавать данные и получать их можно в разных форматах (из запроса или еще как-то) а есть чистая логика работы с чем-то - в смысле, что на входе просто параметры метода и все, а на выходе - ну какие-то данные + логика внутри

symfony Класс пользователя для авторизации - пример реализации UserInterface

Класс может выглядеть напр. так (основная его задача - реализовывать интерфейс UserInterface):

composer & docker: Установка пакета из закрытого репозитория (private git repository)

Суть вопроса

Нужен способ сделать следующее:

  • Установить внутри контейнера (по сценарию в Dockerfile) пакет, который ходится в приватном репозитории (на гитхабе или битбакете)

Т.е. перед этим у вас уже должен быть:

codeception symfony functional Функциональные тесты, Получение клиента (client)- заметки, mock

Наброски того, как можно организовать функциональное тестирование API без браузера/сервера

Проверялось на: Symfony 6, Symfony 7, Codeception 5

Получение клиента

См. отдельную заметку о получении клиента

Использование клиента - отправка запросов

Используя клиент можно авторизоваться напр. так (в т.ч. получить куку):

Возврат ошибок при некорректной обработке формы, структура ответа для html формы - формат для json, HTTP

Пример ответа для формы смены пароля (возможная струкутра):


<?php

$response = [
   $message => 'Есть проблемы!',
   $errors = [
      'old_password' => 'Неверный пароль, вспоминайте!'
      'new_password' => 'Новый пароль и поле подтверждения не совпадают!',
      'new_password_confirm' => 'Новый пароль и поле подтверждения не совпадают!'
   ]
]

-- также:

Pages

Subscribe to RSS - php