Comments (10)
Just added so you should be able to define custom ouath settings like so:
var options = { validatorUrl : null, oauth: { clientId: "your-client-id1", clientSecret: "your-client-secret-if-required1", realm: "your-realms1", appName: "your-app-name1", scopeSeparator: ",", additionalQueryStringParams: {} } }; app.use('/api-docs', swaggerUi.serve, swaggerUi.setup(swaggerDocument, false, options));Let me know if that works and I will update the documentation. You will need to make sure to define all the oauth settings as it simply replaces the current object with the one you define.
@scottie1984
Is the "oauth" param documented anywhere? Had quite the trouble finding out how to do this and would like to help anyone in the future find this easier. You have a line in the README "For all the available options, refer to Swagger UI Configuration" but the key "oauth" does not exist there.
Thanks.
from swagger-ui-express.
This should be possible by passing a custom onComplete function into swagger-ui-express:
const options: {
onComplete: function(swaggerApi, swaggerUi){
if(typeof initOAuth == "function") {
initOAuth({
clientId: "your-client-id",
clientSecret: "your-client-secret-if-required",
realm: "your-realms",
appName: "your-app-name",
scopeSeparator: ",",
additionalQueryStringParams: {}
});
}
if(window.SwaggerTranslator) {
window.SwaggerTranslator.translate();
}
}
}
app.use('/api-docs', swaggerUi.serve, swaggerUi.setup(swaggerDocument, false, options));
Let me know and if it doesn't work I can create a new version to allow you to pass oAuth options through.
from swagger-ui-express.
Looking at index.js, JSON.stringify is called on options, so the method is lost at that point.
from swagger-ui-express.
Apologies - my bad!
{
clientId: "your-client-id",
clientSecret: "your-client-secret-if-required",
realm: "your-realms",
appName: "your-app-name",
scopeSeparator: ",",
additionalQueryStringParams: {}
}
Would you accept being able to pass in this object to the module?
from swagger-ui-express.
Yes, that would work for me
from swagger-ui-express.
Just added so you should be able to define custom ouath settings like so:
var options = {
validatorUrl : null,
oauth: {
clientId: "your-client-id1",
clientSecret: "your-client-secret-if-required1",
realm: "your-realms1",
appName: "your-app-name1",
scopeSeparator: ",",
additionalQueryStringParams: {}
}
};
app.use('/api-docs', swaggerUi.serve, swaggerUi.setup(swaggerDocument, false, options));
Let me know if that works and I will update the documentation. You will need to make sure to define all the oauth settings as it simply replaces the current object with the one you define.
from swagger-ui-express.
@scottie1984 , any updates on this issue? I also need this to provides additional query parameters.
The solution you are going to provide above is OK for us. I made a local test with your solution by adding following code into the indexTemplate:
...
var ui = SwaggerUIBundle(swaggerOptions)
if (customOptions.oauth) {
ui.initOAuth(customOptions.oauth)
}
window.ui = ui
...
Any plan when you will provide this feature, or if I missed anything?
from swagger-ui-express.
I have merge that in - let me know if everything works ok.
from swagger-ui-express.
I have tested using the v2.0.3 npm package, it works well.
from swagger-ui-express.
Any help documenting this would be great.
from swagger-ui-express.
Related Issues (20)
- Apply bearer auth to global scope is not working. HOT 3
- Cannot load two different API specs HOT 6
- Changelog please HOT 2
- I don't understand where swagger.json gets generated... HOT 3
- Getting string instead of array when using multipart form data HOT 2
- feature: ability to serve the docs as a single-file HOT 1
- totally does not load on production HOT 3
- oneOf, anyOf, allOf, not
- refused to execute in browser HOT 3
- Array of strings sent through formdata are converted to array with single string when recieved on nodejs server
- My project is having problems because of assert HOT 3
- "Could not render OperationContainer, see the console."
- Not rendering with $refs HOT 2
- No operations defined in spec!
- Support for OpenAPI Specification 3.1.0 HOT 1
- Using swagger-ui for custom UI rather than swagger-ui-dist?
- [BUG] Changing host on the fly before load is not working
- Vulnerabilities in express
- Route params not filling successfully in nested api controller files using "mergeParams: true"
- [@types/swagger-ui-express] About the impossibility of adding custom js
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from swagger-ui-express.