我有以下JSON,这是我自己从代码中生成的。我基本上是在写代码来为UI生成swagger规范。我正在写一个新的,因为我仍然使用play 1.3,并且swagger模块已经有一段时间没有更新了。然而,我从我的代码生成器中获得了这个JSON,但是UI挂起在"fetching resource list:http://localhost:9100/resources.json;list wait“。javascript控制台显示错误“正在获取”无法读取null“for swagger spec”的属性“参数”。我不知道该怎么做,任何帮助都将不胜感激。
{
"swagger": "2.0",
"info": null,
"host": null,
"basePath": null,
"tags": [
{
"name": "payments",
"description": null,
"externalDocs": null
}
],
"schemes": null,
"consumes": null,
"produces": null,
"paths": {
"/": {
"get": {
"tags": [
"payments"
],
"summary": "/payment_methods",
"description": "",
"operationId": "paymentMethods",
"schemes": null,
"consumes": null,
"produces": [
"application/json"
],
"parameters": [],
"responses": {
"default": {
"description": "successful operation",
"schema": null,
"examples": null,
"headers": null
}
},
"security": null,
"externalDocs": null,
"deprecated": null
},
"head": null,
"post": {
"tags": [
"payments"
],
"summary": null,
"description": null,
"operationId": "addPaypalAccount",
"schemes": null,
"consumes": null,
"produces": null,
"parameters": [],
"responses": {
"default": {
"description": "successful operation",
"schema": null,
"examples": null,
"headers": null
}
},
"security": null,
"externalDocs": null,
"deprecated": null
},
"put": null,
"delete": {
"tags": [
"payments"
],
"summary": null,
"description": null,
"operationId": "deletePaypalAccount",
"schemes": null,
"consumes": null,
"produces": null,
"parameters": [],
"responses": {
"default": {
"description": "successful operation",
"schema": null,
"examples": null,
"headers": null
}
},
"security": null,
"externalDocs": null,
"deprecated": null
},
"options": null,
"patch": null,
"parameters": null
}
},
"securityDefinitions": null,
"definitions": null,
"parameters": null,
"responses": null,
"externalDocs": null,
"securityRequirement": null
}
发布于 2015-12-23 06:19:24
问题出在null
值上。需要禁用它们--null不同于"not present“。也就是说,我认为您需要将映射器配置为不写空值。
发布于 2018-07-07 04:31:56
我遇到了这个问题,结果发现它与我的.NET web api应用程序中的JSON格式化程序有关。我可以通过将这一行添加到BootStrap类的Configure方法来解决这个问题。
config.Formatters.Clear();
https://stackoverflow.com/questions/34403058
复制相似问题