gpt4 book ai didi

c# - Owin OAuth 本地主机/ token 返回 404

转载 作者:太空狗 更新时间:2023-10-29 21:08:28 35 4
gpt4 key购买 nike

首先,当我使用 iis express 从 Visual Studio 运行它时,一切正常。

我有一个运行 Owin OAuth 的 Asp.Net Web Api。这是我的 Startup 类的配置部分:

private static void ConfigureAuth(IAppBuilder app)
{
var oAuthOptions = new OAuthAuthorizationServerOptions
{
#if DEBUG
AllowInsecureHttp = true,
#endif
TokenEndpointPath = new PathString("/Token"),
AccessTokenExpireTimeSpan = TimeSpan.FromDays(30),
Provider = new ApplicationOAuthProvider()
};

app.UseOAuthAuthorizationServer(oAuthOptions);
app.UseOAuthBearerAuthentication(new OAuthBearerAuthenticationOptions());
}

这是我的 WebApiConfig.cs

Register 部分
public static void Register(HttpConfiguration config)
{
// Web API configuration and services
config.SuppressDefaultHostAuthentication();
config.Filters.Add(new HostAuthenticationFilter(OAuthDefaults.AuthenticationType));

var cors = new EnableCorsAttribute("*", "*", "*");
config.EnableCors(cors);

// Web API routes
config.MapHttpAttributeRoutes();

// OData
var builder = new ODataConventionModelBuilder();
builder.EntitySet<Employee>("Employee");
config.MapODataServiceRoute(
routeName: "ODataRoute",
routePrefix: "odata/",
model: builder.GetEdmModel()
);

config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}

我已经在 IIS 版本 8.5.* 上部署了这个应用程序,除了 localhost/Token 端点外,一切正常。它是一个组合的 MVC + Web Api 项目。

我正在使用具有集成管道模式的 .NET v4.5 应用程序池(.NET CLR 版本:4.0)并且 Microsoft.Owin.Host.SystemWeb.dll 存在于 bin 文件夹中。

当我向 Token 端点发出请求时,为什么会收到 404?

最佳答案

我遇到了同样的问题。这是您的问题:

#if DEBUG
AllowInsecureHttp = true,
#endif

在本地 (IISExpress),您正在运行 DEBUG 构建并且您的编译器指令将 AllowInsecureHttp 设置为 true。这意味着您可以通过 http 和 https 请求新的 OAuth token 。

部署到 IIS 意味着您首先要进行 RELEASE 构建。因此编译器指令省略了 AllowInsecureHttp 行。该属性默认为 false,这意味着您只能通过 https 获取 OAuth token 。如果您尝试通过 http 请求 token ,服务器将使用 404 进行回答。

关于c# - Owin OAuth 本地主机/ token 返回 404,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30563814/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com