Swagger PHP API Документация (выполнение php-файлов для создания json)

Я пытаюсь сделать документацию Restful API в PHP swagger, то, что я делал раньше, это то, что я изменил json для работы, теперь я знаю, что мы можем сделать json, создав файлы PHP и используя нотацию swagger. Я проверил пример Pet.php и получил код, но я не знаю, как выполнить файл, чтобы получить документацию json api, которую я могу связать с моим пользовательским интерфейсом Swagger. Я читаю документацию, но она настолько запутанная, и я не знаю, как решить эту проблему, может кто-нибудь помочь, пожалуйста. Вот ссылка, которую я изучаю, но не стоит.

http://zircote.com/swagger-php/using_swagger.html

Swagger-PHP для генерации файла JSON для Swagger-UI

Может кто-нибудь сказать мне шаг за шагом, как для создания документации API в JSON. Я очень благодарен ему, спасибо

1 ответ

Есть два способа добиться этого в swagger-php 2.0.

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

Вот пример контроллера, который делает это.

<?php
namespace Controllers;

use Swagger\Annotations as SWG;
use Swagger;

/**
 * @SWG\Swagger(
 *      basePath="/path/to/opration/",
 *      produces={"application/json"},
 *      swagger="2.0",
 *      @SWG\Info(
 *          version="1.0.0",
 *          title="My API"
 *      )
 * )
 *
 */
class Documentation {

    const API_PATH = "path/to/my/documented/files/";

    public function show(){
        $swagger = Swagger\scan(self::API_PATH);

        return json_enconde($swagger); //you can echo this in the calling script.
    }
}

Примечание. В приведенном выше примере предполагается, что вы установили Swagger-php с Composer и что вызывающий скрипт включает в себя созданный композитором файл автозагрузки (обычно называемый: vendor/autoload.php).

II. Первое решение, состоящее в создании статической документации по json API, описано здесь: /questions/37492194/swagger-php-dlya-generatsii-fajla-json-dlya-swagger-ui/37492213#37492213

Это решение рекомендуется для производственного развертывания, где вы не хотите создавать заново документацию по каждому запросу.

Другие вопросы по тегам