I have a django rest_framework API, Swagger and a Swagger UI.
When I am not logged in I can see a very limited view of "login" and "docs".
When I am logged in I can see lots of stuff.
I am trying to use the swagger-codegen to generate a client:
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
However, it only generates a very limited client that provides the "login" and "docs" functionality.
How do I let swagger-codegen know how to login using http basic authentication, in order for it to generate a more complete client?
The docs says I should do the following, but I do not know what it expects:
-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
Best Answer
Since you are using http basic authentication the command should be:
Where
QWxhZGRpbjpPcGVuU2VzYW1l
is yourusername:password
encoded in base64.Here you can have a look at the code that will parse this option.