2017-08-08 77 views
0

我正在使用ASP.net核心WebAPI并生成API文档,我正在使用Swagger。 Swagger成功生成丰富多彩的文档。但是当我尝试执行一个API方法。 Swagger总是收到错误信息。Swagger UI无法显示来自ASP.net核心的正确响应核心WebAPI

{ “错误”: “服务器没有响应”}

API方法

[Route("api/[controller]")] 
[Produces("application/json")] 
public sealed class AuthController : BaseApiController 
{ 
    [HttpGet] 
    [Route("GetByUser/{uid}/{pwd}")] 
    public IActionResult GetByUser(string uid, string pwd){....} 
} 

注:

  • 我总是得到正确的API响应从上面的方法通过浏览器/提琴手(没有使用Swagger
  • 我也在api配置CORS结束。但从Swagger仍然没有得到适当的回应。

扬鞭的AppSettings

"Swagger": { 
    "FileName": "ApiDoument.xml", 
    "host": "localhost:63687" 

    } 

扬鞭响应

卷曲

X GET 'http://localhost:63687/api/Auth/GetByUser/test%40gmail.com/1234' 

请求URL

http://localhost:63687/api/Auth/GetByUser/test%40gmail.com/1234 

响应体

没有内容

响应代码

响应头

{ “错误”: “没有来自服务器的响应”}

+0

我不知道如何解决您的问题什么,但你扬鞭的AppSettings有一个错字; FileName:ApiDoument,应该是ApiDoCument - 也许就是这样? – cwap

+0

@cwap:FileName在这里不是问题,因为Swagger能够从该“xml”文件生成适当的文档 –

+0

您需要在本地主机上启用CORS。请参阅[为什么在Swagger UI中没有“服务器响应”](https://stackoverflow.com/q/45439845/113116) – Helen

回答

0

问题是解决,上面由于波纹管哈希值描述错误。 Swagger无法返回此类型的值。

AQAAAAEAACcXdXU4rzH9EpRzS2smaRdvesNxkOQMvKld2ySuzXTNcd + 1Gux6CJfV90w ==

解决方案:

using Newtonsoft.Json; 

JsonConvert.SerializeObject(Hashvalue);