Implement changes for API authentication and Swagger UI (#541)
* initial token-based-api login handler * add token schema and validation * initial import of pyro3d api code * basic Swagger spec support * Merge in working copy of API/Device.pm * Fix some error handling for API/Device.pm * Break out utility functions into separate file, to allow other api portions to use * Add NodeIP support. * Add nodeip plugin to config * remove double define of "plugin:" (#448) disclaimer: i did not test this is any way, came across it when looking for something else. * only AuthZ header for api use, and alway regen key on login * use RFC7235 * workaround for Swagger plugin weird response body * do not autodiscover swagger routes * code formatting only * move api util to utils area * initial full swagger spec for nodeip search * add api user role and fix api auth failure response * update version of swagger-ui to 3.20.3 * add more openapi defs * fixes to SQL and api spec * clean up subs * improvements to login/logout for API * make api logout work * add openapi tags to group operations * allow api params to be generated from DBIC schema spec * remove API calls for nodes and devices * remove some poor assumptions about api calls * tidy up * remove DDP * make login and logout similar * example of api call being handled by ajax call * make the branch authonly
This commit is contained in:
@@ -6,6 +6,7 @@ use Dancer ':script';
|
||||
|
||||
use Path::Class 'dir';
|
||||
use Net::Domain 'hostdomain';
|
||||
use File::ShareDir 'dist_dir';
|
||||
|
||||
BEGIN {
|
||||
if (setting('include_paths') and ref [] eq ref setting('include_paths')) {
|
||||
@@ -204,4 +205,8 @@ if (setting('reports') and ref {} eq ref setting('reports')) {
|
||||
# add system_reports onto reports
|
||||
config->{'reports'} = [ @{setting('system_reports')}, @{setting('reports')} ];
|
||||
|
||||
# set swagger ui location
|
||||
config->{plugins}->{Swagger}->{ui_dir}
|
||||
= dir(dist_dir('App-Netdisco'), 'swagger-ui')->absolute;
|
||||
|
||||
true;
|
||||
|
||||
Reference in New Issue
Block a user