Get a file provider api in 30 seconds from configuration.
storfiler is a tiny API to list/download/update/delete files into server folders.
Download the last release, drop it to your server and that's it!
All the configuration can be made in environment variable or appsettings.json file :
Currently only chose to use IIS integration
"Host": {
"UseIis": true
}
Kestrel options, see ms doc for usage
"Kestrel": {
"AddServerHeader": false
}
storfiler use Serilog for logging, see serilog-settings-configuration for usage
"Serilog": {
"MinimumLevel": {
"Default": "Debug",
"Override": {
"Microsoft": "Warning",
"System": "Warning"
}
},
"WriteTo": [
{ "Name": "Console" }
],
"Enrich": ["FromLogContext"]
}
storfiler configuration
"Storfiler": [
{
"resource": "docs", // will be accessible at http://host/docs
"DiskPaths": { // disk provider
"Read": ["C:\\documents"] // read multiple folders
},
"Methods": [ // declare methods & actions
{
"Verb": "Get",
"Path": "/",
"Action": "List" // list files
}
},
{
"Resource": "logs",
"DiskPaths": {
"Read": ["C:\\logs"],
"Write": "C:\\logs"
},
"Methods": [
{
"Verb": "Get",
"Path": "/",
"Action": "List"
},
{
"Verb": "Get",
"Path": "/{fileName}",
"Action": "Download" // Find & download one file
},
{
"Verb": "Get",
"Path": "/download",
"Query": "path", // To use a path we must use query
"Action": "Download",
"IsFullPath": true // Specify if we use fullPath or read path
},
{
"Verb": "Delete",
"Path": "/{fileName}",
"Action": "Remove" // remove one file
},
{
"Verb": "Get",
"Path": "/files/search/{fileName}",
"Pattern": "{fileName}*",
"Action": "Search" // search file in folder/subfolders with pattern
}
]
}
]