using Microsoft.AspNetCore.Mvc;
using System.Net;
using System.Net.Http.Headers;
using Microsoft.Extensions.Hosting.Internal;
using Microsoft.AspNetCore.Http.Extensions;
using IStation.Untity;
using Furion.DynamicApiController;
using System.ComponentModel.DataAnnotations;
using Mapster;
using Microsoft.AspNetCore.Http;
using Furion.DependencyInjection;
using Microsoft.AspNetCore.Authorization;
using Furion.DataEncryption;
using Furion.FriendlyException;
namespace IStation.Application
{
///
/// Test
///
[AllowAnonymous]
[Route("File/Test")]
[ApiDescriptionSettings("File", Name = "测试", Order = 999)]
public class Test_Controller : IDynamicApiController, ITransient
{
private readonly IHttpContextAccessor _httpContextAccessor;
///
///
///
public Test_Controller(IHttpContextAccessor httpContextAccessor)
{
_httpContextAccessor = httpContextAccessor;
}
///
/// 上传文件
///
[Route("UploadFile@V1.0")]
[HttpPost]
public string UploadFile([FromForm]FileTestDto model)
{
var request = _httpContextAccessor.HttpContext.Request;
if (request.Form.Files == null || request.Form.Files.Count != 1)
{
return string.Empty;
}
var uploadFile = request.Form.Files[0];
return string.Empty;
//var fileName = FileHelper.UploadFile(uploadFile.OpenReadStream(), Path.GetExtension(uploadFile.FileName));
//return fileName;
}
///
/// 测试异常
///
[Route("TestException@V1.0")]
[HttpGet]
public string TestException()
{
throw Oops.Oh(ErrorCodes.R001,"ID","3");
throw Oops.Oh(1000).StatusCode(400); // 设置错误码
}
}
}