2016-05-22 77 views
0

的二維地圖我有一個對象,看起來像這樣(數字二維地圖):招搖 - 數字

{ 
    10: { 
    12000: 10000000, 
    14000: 23432423, 
    }, 

    20: { 
     35000: 6747665, 
     45000: 54635454 
    } 
} 

,這是什麼在招搖的模式定義?

感謝。

回答

0

不幸的是,JSON只允許字符串作爲鍵值名(參見Using number as "index" (JSON)),所提供的例子應該再是這樣的:

{ 
    "10": { 
    "12000": 10000000, 
    "14000": 23432423, 
    }, 

    "20": { 
     "35000": 6747665, 
     "45000": 54635454 
    } 
} 

而且在OpenAPI的(FKA揚鞭)規範,可以定義地圖,但該鍵的類型是隱式的,應該是字符串(就像使用JSON一樣)。

當描述一個對象是<string, something>的地圖時,必須使用additionalProperties來描述something

這裏是描述對應於<string, <string, integer>>地圖架構的方法有兩種:

swagger: '2.0' 

info: 
    version: 1.0.0 
    title: Maps 

paths: {} 

definitions: 
    # a <string, <string, integer>> map using 
    # inline definition of <string, integer> map item 
    TwoDimensionMap: 
    additionalProperties: 
     additionalProperties: 
     type: integer 
     format: int64 

    # a <string, integer> map 
    SimpleMap: 
    additionalProperties: 
     type: integer 
     format: int64 

    # a <string, <string, integer>> map using 
    # $ref definition of <string, integer> map item 
    TwoDimensionMapWithRef: 
    additionalProperties: 
     $ref: '#/definitions/SimpleMap' 

TwoDimensionMap是一個完整的內聯定義和TwoDimensionMapWithRef描述完全一樣的東西,但使用的引用,另一個定義爲內<string, integer>地圖。