在 ASP.NET Core 中禁用HTTPS

点此查看原文

我们在VS中新建一个 ASP.NET Core 项目的时候,可以选择是否配置使用HTTPS。如果选中了“为HTTPS配置”这个选项,在开发环境中想要临时禁用HTTPS,只使用HTTP应该怎样做呢?

Select Https

在网上可能会找到很多通过在Program.cs文件中对Kestrel进行设置来禁用HTTPS的教程,或者是使用UseUrls()。如果我们只是需要在开发环境中禁用HTTPS,那么在设置Kestrel之前,首先检查两个位置,可能会让我们的工作更轻松。

UseHttpsRedirection

首先查看一下Startup.csConfigure方法中,是否配置了HTTPS重定向:

app.UseHttpsRedirection();

UseHttpsRedirection为我们的应用添加了重定向HTTP请求到HTTPS请求的中间件。如果想要使用HTTP,那么就注释掉这行代码。

Properties/launchSettings.json

在我们项目的Properties/launchSettings.json文件中,找到applicationUrl,类似如下代码:

...
"applicationUrl": "https://localhost:5001;http://localhost:5000",
...

https地址删除,只保留http

需要注意的是,通过 Visual Studio Code 或者 dotnet new 命令创建的项目,可能不会存在launchSettings.json文件,并且在发布项目的时候也不会将launchSettings.json文件包含进去,所以这种解决方案只对开发环境有效。

对于通过CLI来运行应用,也可以使用 --urls 参数来达到同样的效果。例如: dotnet run --urls=http://0.0.0.0:5000,https://0.0.0.0:5001。那么想要只使用HTTP,把命令中的https移除掉就好了。

参考

点此查看原文
原文首发于zhangchi.io

ASP.NET Core 2.1 + Kestrel (How to disable HTTPS)

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
ASP.Net Core MVC上传文件,可以使用以下步骤: 1. 在视图添加一个表单,包含一个文件输入控件: ```html <form method="post" enctype="multipart/form-data"> <div class="form-group"> <label for="file">选择文件:</label> <input type="file" name="file" id="file" class="form-control-file" /> </div> <button type="submit" class="btn btn-primary">上传</button> </form> ``` 2. 在控制器添加一个动作方法,用于接收上传的文件: ```csharp [HttpPost] public async Task<IActionResult> Upload(IFormFile file) { if (file == null || file.Length == 0) { return BadRequest("请选择文件"); } using (var stream = new MemoryStream()) { await file.CopyToAsync(stream); // 处理上传的文件 // ... return Ok("上传成功"); } } ``` 3. 在Startup.cs文件的ConfigureServices方法添加文件上传服务: ```csharp services.AddMvc(options => { options.Filters.Add(new AutoValidateAntiforgeryTokenAttribute()); // 添加防伪标记,防止跨站攻击 }).AddRazorPagesOptions(options => { options.Conventions.AddPageRoute("/Index", ""); }) .AddNewtonsoftJson(); // 添加NewtonsoftJson,用于序列化JSON services.AddControllersWithViews(); // 添加控制器和视图 services.AddRazorPages(); // 添加Razor页面 services.AddAntiforgery(); // 添加防伪标记,防止跨站攻击 services.Configure<IISServerOptions>(options => { options.AllowSynchronousIO = true; // 允许同步IO }); services.Configure<FormOptions>(options => { options.MultipartBodyLengthLimit = long.MaxValue; // 设置允许上传的最大文件大小 }); ``` 以上就是在ASP.Net Core MVC上传文件的步骤。需要注意的是,要添加防伪标记,防止跨站攻击;要设置允许上传的最大文件大小。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值