2017-11-07 3 views

答えて

1

Swagger UIを使用すると、プロフェッショナルなAPIドキュメントを作成できます。私はすべての私の帆のプロジェクトのためAPIdocを使用してい

https://www.npmjs.com/package/sails-swagger

+0

私はapiのリクエストと応答で自動的にapidocを生成したいと思います。 – Vipul

+0

詳しいことはありますか? Swaggerは、生成されたドキュメントのリクエストとレスポンスをテストする方法を提供します。 – Max08

+0

私は自分のコードを分析し、すべてのapiとその可能なリクエスト、応答を含むAPIドキュメントを生成するツールが必要です。私はちょうど私のプロジェクトでそのツールを構成する必要があり、すべてのものはそれによって行われます。 – Vipul

1

- :帆のJSと闊歩の統合については、このリンクを参照してください。

まず、開発DEPSとしてapidocとrimrafをインストールします:これは私がそれを行う方法です

npm install apidoc rimraf --save-dev 

は、その後、あなたのパッケージJSONを編集し、apidoc作成するためのスクリプトを追加します。もちろん

...package.json file 
"scripts": { 
    "docs": "rimraf public/docs && apidoc -i config/ -o public/docs", 
    "start": "NODE_ENV=production node app.js" 
    }, 
    "dependencies": { 
... rest of package.json file 

を、 public/docsは、ドキュメントを置く任意のフォルダにすることができます...私はpublic/docsを使用しています

次に、config/routes.js内にapidoc固有のコメントを追加するか、コントローラ内のコメント、-i/configの代わりに-i/api/controllersを実行するように上部スクリプトを変更する

私が使用しているボーナストリックは、セイルを使って直接ドキュメントを提供することです。localhost:1337/docsあなたはまた、package.json内、あるいは設定内の起動スクリプト内のドキュメントの生成を追加することで、これを自動化でき

npm run docs 

{ 
    "generators": { 
    "modules": {} 
    }, 
    "hooks": { 
    }, 
    "paths": { 
    "public": "public" //name of the folder where all my public assets are (including docs) 
    } 
} 

あなたはドキュメントの新しいコピーをしたいときはいつでも、単に実行します。これをファイルと追加/bootstrap.js。しかし、必要になったときに手動でドキュメントを呼び出すことで、はるかに優れていることがわかりました。それはリフトプロセスをスピードアップします。

EDIT:あなたもpackage.jsonファイル内apidoc設定を渡すことができることを言及するのを忘れ:

...package.json file 

    "main": "app.js", 
    "repository": { 
    "type": "git", 
    "url": "repo url..." 
    }, 
    "apidoc": { 
    "title": "My documentation title", 
    // you can use all other config options here: http://apidocjs.com/#configuration 
    }, 
    "author": "some guy", 
    "license": "" 
} 

...rest of package.json file 
+0

私は自分のコードに具体的なコメントを書かずに、apidocを生成したいと思います。 – Vipul

+0

悲しいことに...新しい帆1.0とそれはコントローラロジックとしてのマシンでした...しかし、あなたはそれのために独自のモジュールを書く必要があります:) – hlozancic

0

あなたがあなたの個人の行動に定義されていることを応答の構造とAPIドキュメントを生成しようとしています? 私の経験から、私がこれを行うことができた唯一の方法は、各コントローラで手書きのコメントを使用することです。私は各コントローラの基本モデルではなく、ハイパーメディアレスポンスでAPIドキュメントを強制することができました。 これを行う別の方法がある場合は、共有してください。

+0

マニュアルコメントなしで書くことができますか? – Vipul

+0

私の研究中、Node.jsに対してこれを自動的に行うツールはありませんでした。私はAPI DocsとSails-Swaggerの両方を試しました。私は、symfonyのように、Symfonyがアノテーションを使ってエンティティを生成するという唯一の違いがあります...一方、Sailsでは、単に簡単なコメントです)。 Swaggerはコードから文書を生成しますが、応答としてモデルの構造を返します。 – Sorix

関連する問題