This commit is contained in:
2026-10-03 17:42:36 +03:30
parent c30d93be0b
commit 7cad889cd0
31 changed files with 1346 additions and 212 deletions
+56
View File
@@ -18,6 +18,7 @@ using xIdentityService.Interfaces;
using Microsoft.Extensions.Logging;
using xIdentityService.Controllers;
using Microsoft.AspNetCore.Authorization;
using System.Linq;
namespace xAiApi.Controllers
{
@@ -522,6 +523,61 @@ namespace xAiApi.Controllers
}
}
#endregion
//
#region Content Extraction ...
/// <summary>
/// Extract Files Content ...
/// </summary>
/// <param name="files"></param>
/// <param name="extractors"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
[HttpPost("ExtractContent")]
[Consumes("multipart/form-data")]
public async Task<ActionResult<string>> ExtractContent(
[FromForm] IFormFileCollection files,
[FromForm] string extractors = null,
CancellationToken cancellationToken = default
) {
//
try
{
//
// Validate ...
if (!files.HasChild())
{
XException.InvalidArgs.Throw();
}
//
var userInfo = await GetUserInfo();
var connectionId = GetConnectionId();
//
string[] extractorArr = null;
if (!extractors.IsNullOrEmpty())
{
extractorArr = [.. extractors.ParseListString<string>()];
}
//
var result = await aiService.ExtractContent(
files: files,
extractors: extractorArr,
cancellationToken: cancellationToken
);
//
return Ok(result);
}
catch (Exception ex)
{
var result = GetExceptionActionResult(ex);
return result;
}
}
#endregion
//
#region Data Actions ...