如何在 .Net Core API 中实现上传表单?

用户10863293

我创建了一个.Net Core API(我使用了swagger)。

我创建了一个控制器以上传图片以将其链接到项目。

.cs :

[HttpPut("[Action]/{id}")]
public async Task<ActionResult> Link(int id, IFormFile file)
{
    var item = await _context.Item.FirstOrDefaultAsync(t => t.Id == id);
    if (item == null)
    {
        return BadRequest("item null");
    }

    using (var memoryStream = new MemoryStream())
    {
        await file.CopyToAsync(memoryStream);
        // code to link
        return Ok(file);
    }
}

我的问题是,如果我想测试它是否有效,我必须使用邮递员,但我想在我的 api 中测试它。

我的问题有解决方案吗?目前它看起来像这样:上传文件

爱德华

对于Swashbuckle.AspNetCorewith4.0.1Swashbuckle.AspNetCore.Swaggerwith 4.0.1,它支持IFormFilewith swagger/index.html

详细步骤:

  1. 安装包Swashbuckle.AspNetCore4.0.1Swashbuckle.AspNetCore.Swagger4.0.1
  2. Startup.cs

    public class Startup
    {
        public Startup(IConfiguration configuration)
        {
            Configuration = configuration;
        }
    
        public IConfiguration Configuration { get; }
    
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
            services.AddSwaggerGen(c =>
            {
                c.SwaggerDoc("v1", new Info { Title = "My API", Version = "v1" });
            });
    
        }
    
        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }
            else
            {
                // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
                app.UseHsts();
            }
    
            app.UseHttpsRedirection();
            // Enable middleware to serve generated Swagger as a JSON endpoint.
            app.UseSwagger();
            // Enable middleware to serve swagger-ui (HTML, JS, CSS, etc.),
            // specifying the Swagger JSON endpoint.
            app.UseSwaggerUI(c =>
            {
                c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
            });
    
            app.UseMvc();
        }
    }
    
  3. ApiController

    [Route("api/[controller]")]
    [ApiController]
    public class ValuesController : ControllerBase
    {
        [HttpPut("[Action]/{id}")]
        public async Task<ActionResult> Link(int id, IFormFile file)
        {
            return Ok(id);
        }
    }
    

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

maxReceivedMessageSize 如何在 Asp.net Core Api 中设置?

来自分类Dev

如何在asp.net core中访问从jquery文件上传发送的附加表单数据?

来自分类Dev

如何在新的ASP.NET Core中调用Web API非默认构造函数

来自分类Dev

如何在ASP.NET Core Web API中配置JSON格式缩进

来自分类Dev

如何在ASP.NET Core Web Api中完成版本控制

来自分类Dev

如何在ASP.NET Core服务器中存储外部API的访问令牌?

来自分类Dev

如何在ASP.net Core 2中创建动态API

来自分类Dev

如何在中间件.Net Core Web API中获取当前的User / ClaimsPrincipal

来自分类Dev

如何在api MVC Project Net Core 3.1中向控制器添加动作

来自分类Dev

我应该如何在ASP .NET Core API中返回错误

来自分类Dev

如何在运行于ASP.NET Core 3.1的启用OData的Web API中添加Swagger

来自分类Dev

如何在.NET Core API中设计嵌套类以获取特定的架构?

来自分类Dev

如何在.net core 2.2 Web API中传递带有“禁止”响应的字符串

来自分类Dev

如何在ASP.NET Core API中添加和删除收藏夹

来自分类Dev

如何在新的ASP.NET Core中调用Web API非默认构造函数

来自分类Dev

如何在 ASP Net Core 中授权 Web API 控制器

来自分类Dev

如何在asp.net core 1.0 Web API的启动服务中创建后台任务?

来自分类Dev

如何在 .Net Core 中为 web api ajax 调用启用 cors

来自分类Dev

如何在 ASP.NET Core 2.2 REST API 的 GET Action 中接收多个对象参数?

来自分类Dev

如何从表单将2GB以上的大文件上传到.NET Core API控制器?

来自分类Dev

如何在.NET Core中写入文件?

来自分类Dev

我如何使用 c# 在 asp.net web api(不是 .net core)中实现 api 网关

来自分类Dev

如何在Asp.Net Core Web Api和spa(Angular)中正确实现“ Google登录”?

来自分类Dev

如何更改.NET Core 3.1 API中的路由错误

来自分类Dev

如何在 azure cosmos db 中为 asp.net core web api 实现上一个/下一个分页

来自分类Dev

上传文件 .NET Core Web API 的问题

来自分类Dev

将项目从2.2更新到3.1(缺少程序集)或如何在.NET Core中使用API POST请求时,PostAsJsonAsync()在.Net Core 3.1中不起作用

来自分类Dev

如何通过表单在ASP.NET Web API中实现Active Directory身份验证?

来自分类Dev

如何通过表单在ASP.NET Web API中实现Active Directory身份验证?

Related 相关文章

  1. 1

    maxReceivedMessageSize 如何在 Asp.net Core Api 中设置?

  2. 2

    如何在asp.net core中访问从jquery文件上传发送的附加表单数据?

  3. 3

    如何在新的ASP.NET Core中调用Web API非默认构造函数

  4. 4

    如何在ASP.NET Core Web API中配置JSON格式缩进

  5. 5

    如何在ASP.NET Core Web Api中完成版本控制

  6. 6

    如何在ASP.NET Core服务器中存储外部API的访问令牌?

  7. 7

    如何在ASP.net Core 2中创建动态API

  8. 8

    如何在中间件.Net Core Web API中获取当前的User / ClaimsPrincipal

  9. 9

    如何在api MVC Project Net Core 3.1中向控制器添加动作

  10. 10

    我应该如何在ASP .NET Core API中返回错误

  11. 11

    如何在运行于ASP.NET Core 3.1的启用OData的Web API中添加Swagger

  12. 12

    如何在.NET Core API中设计嵌套类以获取特定的架构?

  13. 13

    如何在.net core 2.2 Web API中传递带有“禁止”响应的字符串

  14. 14

    如何在ASP.NET Core API中添加和删除收藏夹

  15. 15

    如何在新的ASP.NET Core中调用Web API非默认构造函数

  16. 16

    如何在 ASP Net Core 中授权 Web API 控制器

  17. 17

    如何在asp.net core 1.0 Web API的启动服务中创建后台任务?

  18. 18

    如何在 .Net Core 中为 web api ajax 调用启用 cors

  19. 19

    如何在 ASP.NET Core 2.2 REST API 的 GET Action 中接收多个对象参数?

  20. 20

    如何从表单将2GB以上的大文件上传到.NET Core API控制器?

  21. 21

    如何在.NET Core中写入文件?

  22. 22

    我如何使用 c# 在 asp.net web api(不是 .net core)中实现 api 网关

  23. 23

    如何在Asp.Net Core Web Api和spa(Angular)中正确实现“ Google登录”?

  24. 24

    如何更改.NET Core 3.1 API中的路由错误

  25. 25

    如何在 azure cosmos db 中为 asp.net core web api 实现上一个/下一个分页

  26. 26

    上传文件 .NET Core Web API 的问题

  27. 27

    将项目从2.2更新到3.1(缺少程序集)或如何在.NET Core中使用API POST请求时,PostAsJsonAsync()在.Net Core 3.1中不起作用

  28. 28

    如何通过表单在ASP.NET Web API中实现Active Directory身份验证?

  29. 29

    如何通过表单在ASP.NET Web API中实现Active Directory身份验证?

热门标签

归档