我正在尝试使用swaggerwcf将Swagger添加到WCF REST API。
我已经按照说明进行操作,但是我不知道使用什么URL查看我的Swagger文档。我尝试过:
http://myservername/api-docs/index.html
http://myservername/api-docs/swagger.json
所有这些均导致“请求错误”,“服务器在处理请求时遇到错误。请参阅服务帮助页面以构造对服务的有效请求。”
答案 0 :(得分:1)
这取决于您在global.asax中编写的代码。
例如,我在global.asax中的代码是
protected void Application_Start(object sender, EventArgs e)
{
RouteTable.Routes.Add(new ServiceRoute("RegistrationService/api-docs", new WebServiceHostFactory(), typeof(SwaggerWcfEndpoint)));
}
然后我应该访问http://localhost:62193/RegistrationService/api-docs(http://localhost:62193是我的根路径)。
此外,请确保您已配置web.xml。
<service name="SwaggerWcf.SwaggerWcfEndpoint">
<endpoint address="" binding="webHttpBinding" contract="SwaggerWcf.ISwaggerWcfEndpoint"></endpoint>
</service>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true"
multipleSiteBindingsEnabled="true" />
</system.serviceModel>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
然后,如果您输入http://localhost:62193/RegistrationService/api-docs/,它将把您重定向到http://localhost:62193/RegistrationService/api-docs/index.html?url=/RegistrationService/api-docs/swagger.json#!/Books/Service_BookStore_ReadBooks