2017-01-05 23 views
1

我得到一个404文件,我试图在我的招摇注射中加入一个JavaScript文件。以下是我昂首阔步配置无法在Swagger中注入Javascript

var thisAssembly = typeof(SwaggerConfig).Assembly; 

GlobalConfiguration.Configuration 
    .EnableSwagger(c => 
     { 
      c.SingleApiVersion("v1", "A title for your API"); 
     }) 
    .EnableSwaggerUi(c => 
     { 
      c.InjectJavaScript(thisAssembly,"MyApi.Api.SwaggerExtensions.inject.js"); 
     }); 

对于inject.js生成操作设置为嵌入的资源和逻辑路径是正确的,因为我的项目名称是MyApi.Api和文件是项目名为SwaggerExtensions内的文件夹中

+0

你使用什么URL返回404?你知道Swashbuckle生成这个URL:'swagger/ui/ext/MyApi-Api-SwaggerExtensions-inject-js'吗? – venerik

+0

我知道,我在 /swagger/ui/ext/MyApi-Api-SwaggerExtensions-inject-js?_ = 1483663626890 – coder32

+0

上得到一个404好的。还有一个镜头是:MyApi.Api是你项目的默认命名空间? – venerik

回答

1

使用自定义资源时,资源名称应包含项目的默认名称空间,如here所述。在你的情况下,配置应该是:

c.InjectJavaScript(thisAssembly, "AcctMgmt.SwaggerExtensions.inject.js")