mirror of
https://github.com/volodymyrsmirnov/MalwareMultiScan.git
synced 2025-08-25 22:01:16 +00:00
version 1.1L
* UI responsive table fix * Background scanning for backends * Callback URL parameter to notify on scan results
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
using System;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Threading.Tasks;
|
||||
using MalwareMultiScan.Api.Attributes;
|
||||
@@ -31,13 +32,16 @@ namespace MalwareMultiScan.Api.Controllers
|
||||
/// Queue file for scanning.
|
||||
/// </summary>
|
||||
/// <param name="file">File from form data.</param>
|
||||
/// <param name="callbackUrl">Optional callback URL.</param>
|
||||
[HttpPost("file")]
|
||||
[ProducesResponseType(typeof(ScanResult), StatusCodes.Status201Created)]
|
||||
[ProducesResponseType(StatusCodes.Status400BadRequest)]
|
||||
public async Task<IActionResult> ScanFile(
|
||||
[Required] [MaxFileSize] IFormFile file)
|
||||
[Required] [MaxFileSize] IFormFile file,
|
||||
[FromForm] [IsHttpUrl(false)] string callbackUrl = null)
|
||||
{
|
||||
var result = await _scanResultService.CreateScanResult();
|
||||
var result = await _scanResultService.CreateScanResult(
|
||||
string.IsNullOrEmpty(callbackUrl) ? null : new Uri(callbackUrl));
|
||||
|
||||
string storedFileId;
|
||||
|
||||
@@ -56,13 +60,16 @@ namespace MalwareMultiScan.Api.Controllers
|
||||
/// Queue URL for scanning.
|
||||
/// </summary>
|
||||
/// <param name="url">URL from form data.</param>
|
||||
/// <param name="callbackUrl">Optional callback URL.</param>
|
||||
[HttpPost("url")]
|
||||
[ProducesResponseType(typeof(ScanResult), StatusCodes.Status201Created)]
|
||||
[ProducesResponseType(StatusCodes.Status400BadRequest)]
|
||||
public async Task<IActionResult> ScanUrl(
|
||||
[FromForm] [Required] [IsHttpUrl] string url)
|
||||
[FromForm] [Required] [IsHttpUrl] string url,
|
||||
[FromForm] [IsHttpUrl(false)] string callbackUrl = null)
|
||||
{
|
||||
var result = await _scanResultService.CreateScanResult();
|
||||
var result = await _scanResultService.CreateScanResult(
|
||||
string.IsNullOrEmpty(callbackUrl) ? null : new Uri(callbackUrl));
|
||||
|
||||
await _scanResultService.QueueUrlScan(result, url);
|
||||
|
||||
|
@@ -15,7 +15,7 @@ namespace MalwareMultiScan.Api.Controllers
|
||||
public class ScanResultsController : Controller
|
||||
{
|
||||
private readonly IScanResultService _scanResultService;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Initialize scan results controller.
|
||||
/// </summary>
|
||||
|
Reference in New Issue
Block a user