ServiceStack api / auth / credentials在前端迁移时返回404

时间:2018-10-18 15:12:45

标签: c# servicestack credentials

我将前端更改为React,所以我用VS2015开始了一个新项目。我已经使用旧的API服务配置了ServiceStack。一切正常,除了以下一项:api / auth / credentials。

当我尝试发送POST时收到404。

我的Configure有:

public MyApphost() : base("My web services", typeof(MyApphost).Assembly) {}

和:

(在先前对插件的调用中)

IoC.Container.Register<IDbConnectionFactory>(c => new OrmLiteConnectionFactory(Dvtrck.Configuration.Manager.Current.Dsn, Dvtrck.Services.OrmLiteDialects.PostgreSQLDialectProviderLowerCase.Instance));

...(一些代码)

Plugins.Add(new AuthFeature(() =>
    new UserSession(),
    new IAuthProvider[] {
        new CustomAuthProvider(), // CustomAuthProvider : CredentialsAuthProvider
    }));

我的web.config具有:

<location path="api">
    <system.web>
        <httpHandlers>
            <add path="*" type="ServiceStack.WebHost.Endpoints.ServiceStackHttpHandlerFactory, ServiceStack" verb="*" />
        </httpHandlers>
    </system.web>
    <!-- ServiceStack: Required for IIS7 -->
    <system.webServer>
        <modules runAllManagedModulesForAllRequests="true" />
        <validation validateIntegratedModeConfiguration="false" />
        <handlers>
            <add path="*" name="ServiceStack.Factory" type="ServiceStack.WebHost.Endpoints.ServiceStackHttpHandlerFactory, ServiceStack" verb="*" preCondition="integratedMode" resourceType="Unspecified" allowPathInfo="true" />
        </handlers>
    </system.webServer>
</location>

我已经检查过类似的问题,但情况不同。添加AuthFeature时,即使我也没有错误。我不明白为什么在我的旧项目中效果很好。

1 个答案:

答案 0 :(得分:1)

您也need to configure

SetConfig(new HostConfig { HandlerFactoryPath = "api" });