Articles of slim

swagger-php имеет разные документы из одного и того же кода

Мы используем slim framework и swagger–php для динамического создания документации swagger. Теперь у нас есть некоторые специальные методы в API, которые не должны публично оформляться. (/ doc now) Есть ли способ получить второй URL-адрес документации (/ doc2), где я могу получить секретные методы и параметры документально? (без необходимости делать документацию вручную, просто используя аннотации в […]

Лучший способ реализовать JWT?

Я создаю аутентификацию JWT, и у меня есть некоторые сомнения: для повышения безопасности, может быть хорошей идеей сохранить в базе данных токен пользователя и проверить, каждый раз, если токен, отправленный API, совпадает с тем, который был сохранен в базе данных? Это действительно полезно? чтобы избежать сохранения информации о пользователе в сеансе, хорошая идея ставит электронную […]

slim php (объяснение документации «тело запроса»)

Я работаю с Slim PHP в первый раз, и я пытаюсь понять одну из концепций. В тонкой документации PHP говорится: Тело запроса Используйте метод getBody () объекта запроса для получения необработанного тела запроса HTTP, отправленного HTTP-клиентом. Это особенно полезно для приложений Slim, которые потребляют JSON или XML-запросы. <?php $request = $app->request(); $body = $request->getBody(); Мой […]

Rest API и Slim Framework

Я следую инструкциям здесь: http://www.androidhive.info/2014/01/how-to-create-rest-api-for-android-app-using-php–slim-and-mysql-day-23/ Так что у меня в моем index.php: <?php error_reporting(-1); ini_set('display_errors', 'On'); require_once '../include/DbHandler.php'; require_once '../include/PassHash.php'; require '.././libs/Slim/Slim.php'; $app = new Slim(); // User id from db – Global Variable $user_id = NULL; /** * Adding Middle Layer to authenticate every request * Checking if the request has valid api key […]

Тонкая маршрутизация – игнорируются маршруты

У меня проблема с моделью маршрутов, поэтому они распознаются правильно. У меня есть следующие маршруты: $app->get('/courses/:id', function ($id) use ($app) { $app->render(200, array("Id parameter")); }); $app->get('/courses/attendees', function () use ($app) { $app->render(200, array("attendee Parameter")); }); $app->get('/courses/search', function () use ($app) { $app->render(200, array("search Parameter")); }); Если я вызову URI localhost / courses / 12, я […]

PHP Неустранимая ошибка: класс «Slim» не найден – Slim Framework 3

Я получаю эту ошибку, и я не смог ее исправить. Все решения здесь используют старые версии Slim и в основном относятся к регистрации автозагрузчика, который обрабатывается в этом случае. Что именно вызывает эту ошибку? В нем говорится, что это происходит в строке в функции addJob() с помощью этого кода $request = Slim::getInstance()->request(); т.е. отсутствует класс […]

PHP Slim Framework Создать контроллер

Я создаю API, используя платформу Slim. В настоящее время я использую один файл для создания маршрута и пропускаю его: $app->get('/', function($req, $resp){ //Code… }) Но я понимаю, что мой файл быстро растет. То, что я хочу сделать, это использовать контроллеры вместо этого, поэтому у меня будет класс контроллера и просто передайте методы экземпляра / статики […]

OAuth 2.0 Пример Auth Server

Я хочу попробовать с этим примером OAuth2-сервера ( https://github.com/alexbilbie/oauth2-example-auth-server ), но когда я хочу его запустить, он дает мне ошибку " Fatal error: Interface 'OAuth2\Storage\ClientInterface' not found in /var/www/oauth2-auth-server/model_client.php on line 2 " Я думаю, мне нужно добавить автозагрузчик в composer.json. Я сделал это, но навсегда это дает мне эту ошибку. Но я также думаю, […]

Как правильно добавить параметр без ошибок в доктрине swagger zircote

Я использую swagger в первый раз, а приведенный ниже код приводит к ошибке «Недействительный параметр». /** * @SWG\Post( * path="/pub/user/login", * summary="Login", * tags={"User"}, * @SWG\Parameter( * name="phone", * in="formData", * description="The phone from the database", * required=true, * type="string" * ), * @SWG\Parameter( * name="token", * in="formData", * description="The token for this device and […]

Slim framework – Как использовать автозагрузку Slim / Slim.php вместо использования?

Как я могу использовать autoload Slim / Slim.php вместо использования require ? // standard method //require 'ext/Slim/Slim.php'; // autoload method: define ('WEBSITE_DOCROOT', str_replace('\\', '/', dirname(__FILE__)).'/'); // Instance of SplAutoload. $SplAutoload = new SplAutoload(); // Load classes. $SplAutoload->fetch([ 'ext/' // Slim/ is kept under ext/ ]); \Slim\Slim::registerAutoloader(); //Instantiate a Slim application: $app = new \Slim\Slim(); //Define […]