我有一个
Angular (6)
应用程序使用
.net Web API
我想强迫
http to https
Web API
侧面处理-所有
/api
重定向到的路径
https
http://csharp-video-tutorials.blogspot.com/2016/09/aspnet-web-api-enable-https.html
创建
要求属性.cs
班级:
using System;
using System.Net;
using System.Net.Http;
using System.Text;
using System.Web.Http.Controllers;
using System.Web.Http.Filters;
namespace api
{
public class RequireHttpsAttribute : AuthorizationFilterAttribute
{
public override void OnAuthorization(HttpActionContext actionContext)
{
if (actionContext.Request.RequestUri.Scheme != Uri.UriSchemeHttps)
{
actionContext.Response = actionContext.Request
.CreateResponse(HttpStatusCode.Found);
actionContext.Response.Content = new StringContent
("<p>Use https instead of http</p>", Encoding.UTF8, "text/html");
UriBuilder uriBuilder = new UriBuilder(actionContext.Request.RequestUri);
uriBuilder.Scheme = Uri.UriSchemeHttps;
uriBuilder.Port = 443;
actionContext.Response.Headers.Location = uriBuilder.Uri;
}
else
{
base.OnAuthorization(actionContext);
}
}
}
}
WebApiConfig.cs:
public static void Register(HttpConfiguration config)
{
config.Filters.Add(new RequireHttpsAttribute());
}
https://myurl.com/api
,但是看起来像
https://myurl.com/index.html#
),我无法让这些重定向到
https协议
. 必须说明是正常的吗
在中重定向两者
代码和
Angular
如果没有,也许我们需要将web服务器配置为只使用
?