2017-02-08 11 views
3

私はdjango rest_framework API、Swagger、Swagger UIを持っています。 私がログインしていないときは、「ログイン」と「ドキュメント」という非常に限られたビューしか見ることができません。 私がログインしているとき、私はたくさんのものを見ることができます。ユーザー名とパスワードでswagger-codegenを使用する基本認証

私はクライアントを生成するために威張っ-コード生成を使用しようとしています:

java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar \ 
generate -i http://127.0.0.1:8080/api/docs/ -l python -o myclient 

はしかし、それだけで「ログイン」および「ドキュメント」機能を提供して非常に限られたクライアントを生成します。

http基本認証を使用してログインする方法をより完全なクライアントを生成するためにswagger-codegenに知らせるにはどうすればよいですか?

ドキュメントは、私は次の操作を行う必要があると言うが、私はそれが期待するのか分からない:

-a <authorization>, --auth <authorization> 
     adds authorization headers when fetching the swagger definitions 
     remotely. Pass in a URL-encoded string of name:header with a comma 
     separating multiple values 

答えて

8

あなたはHTTP基本認証を使用しているので、コマンドは次のようになります。

java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar \ 
generate -i http://127.0.0.1:8080/api/docs/ -l python -o myclient -a "Authorization:Basic QWxhZGRpbjpPcGVuU2VzYW1l" 

QWxhZGRpbjpPcGVuU2VzYW1lあなたのusername:passwordは、base64でエンコードされています。

Hereこのオプションを解析するコードを見ることができます。

+1

[このサイト](https://www.base64encode.org)を使用して、資格情報を 'username:password'の形式でエンコードすることができます。 –

関連する問題