有没有办法要求WebApi使用SSL?属性?

我没有看到System.Web.Http以下的属性,比如MVC的RequireHttps属性.如果有内置的解决方案,我只是试图避免滚动我自己的属性/消息处理程序.

推荐答案

您可以使用WebAPIContrib项目中的RequireHttpsHandler.基本上,它所做的只是判断传入的请求URI方案:

if (request.RequestUri.Scheme != Uri.UriSchemeHttps)
{
  // Forbidden (or do a redirect)...
}

另外,卡洛斯·菲盖拉在他的MSDN博客上也发表了another implementation篇文章.

.net相关问答推荐

当数据大量分布在微服务中时,我应该如何设计后端?

在`MAUI`应用中使用Android`MediaPlayer`的`prepare`方法只在发布模式下和在物理设备上崩溃

正则表达式匹配 URL 中的多个子目录

如何在 C# 中将 HTTP 发布请求发送到另一个 API?

每当属性值发生变化时引发事件?

是否有任何 x 次的 for 循环的更短/更简单的版本?

在 Moq 中模拟泛型方法而不指定 T

不同命名空间中的部分类

具有透明背景且包含不透明控件的 WPF 窗口

图像与位图类

C# 相当于 Java 的 <?在泛型中扩展 Base>

隐式与显式接口实现

如果需要,将方案添加到 URL

MemoryStream.Close() 或 MemoryStream.Dispose()

如何保护我的 .NET 程序集免受反编译?

场与财产.性能优化

DataContractSerializer vs XmlSerializer:每个序列化器的优缺点

是 C# 中的 bool 读/写原子

可以从 C# 调用 C++ 代码吗?

如何使用 AutoMapper .ForMember?