我正在尝试使用 OpenAPI 规范 (v3) 定义文件下载端点。 我面临两个问题。 1)文件没有被下载 2) 在 swagger-ui 中,响应正文显示一条不是由服务器生成的消息(即无法解析 JSON。原始结果:“
有人知道我做错了什么吗?
我被告知,异常消息的原因是因为 application/json 是据说在服务器响应标头中返回的内容媒体。请参阅此处的标题:
响应实际上是一个文本文件——而不是 JSON。发送服务器配置不正确。 Swagger-UI 运行时响应处理程序确定响应是否有效。 因此 Swagger-UI 输出“无法解析 JSON...”消息。
由于错误,浏览器上的输出到本地存储功能无法执行。
有关更多详细信息,请参阅 Swagger-UI 问题 #4098。
试试这个。
services.AddMvc(config => {
}).SetCompatibilityVersion(CompatibilityVersion.Version_2_2)
.AddJsonOptions(options => {
options.SerializerSettings.DateFormatString = "yyyy-MM-ddTHH:mm:ssZ";
options.SerializerSettings.Formatting = Formatting.Indented;
options.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();
options.SerializerSettings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;
});
我所要做的就是设置响应类型
ResponseEntity 与 ResponseEntity< String >