【发布时间】:2017-07-20 20:05:49
【问题描述】:
我有一个 POST 方法返回“image/png”内容的场景。 API 在 Postman 中完美运行,我可以看到图像。
我使用 Swagger 来记录我的 API。由于某种原因,“试用”功能会使任何返回图像的 POST 方法崩溃。它在加载时冻结,我在浏览器控制台中看到以下内容:
cannot parse JSON/YAML content
swagger-ui-min-js:14 Uncaught TypeError: Failed to execute 'createObjectURL' on 'URL': No function was found that matched the signature provided.
at C.n.showStatus (swagger-ui-min-js:14)
at showCompleteStatus (swagger-ui-min-js:14)
at response (swagger-ui-min-js:9)
at h (swagger-ui-min-js:7)
at t.on.response (swagger-ui-min-js:7)
at swagger-ui-min-js:7
at h.callback (swagger-ui-min-js:13)
at h.<anonymous> (swagger-ui-min-js:13)
at h.r.emit (swagger-ui-min-js:13)
at XMLHttpRequest.n.onreadystatechange (swagger-ui-min-js:13)
关于如何解决此问题的任何想法? API 有效(至少在 Postman 中),只是 Swagger UI 似乎有问题。 我通过 nuget 包 Swashbuckle.Core 和 Swashbuckle 版本 5.6.0 安装了 Swagger
【问题讨论】:
-
没有 Swagger UI 版本 5.6.0。最新的是 3.0.19,PNG 图像响应显示得很好i.stack.imgur.com/3mVHc.png。您能否说明您使用的是哪个 Swagger UI 版本和浏览器?你能发布你的 Swagger 规范吗?
-
@Helen 我通过nuget包安装了swaggernuget.org/packages/Swashbuckle这个包的版本是5.6。我不知道相应版本的 Swagger UI,因为它没有列出。另外在您发布的图像上,我看到它是 GET 请求。我的问题发生在从 POST 返回的图像上。
-
我正在尝试重现此问题,请参阅此处:swashbuckletest.azurewebsites.net/swagger/ui/…
-
在我的情况下,我有一个带有 GET 和 POST 的控制器,并且都返回“image/png”内容,但是图像不同,并且在 swagger-ui 中,POST 显示了GET...代码在这里:github.com/heldersepu/SwashbuckleTest/blob/master/Swagger_Test/…
-
向 swagger-ui 团队提交的错误:github.com/swagger-api/swagger-ui/issues/3435
标签: swagger swagger-ui swashbuckle