Google maps api 3 如何识别google place details结果是否为状态(管理区域级别1)

Google maps api 3 如何识别google place details结果是否为状态(管理区域级别1),google-maps-api-3,google-places-api,Google Maps Api 3,Google Places Api,目前,我们正在使用Google places api的address_组件数组来识别搜索的地点是州还是国家。对于州和国家地点,我们将在搜索提交时传递州代码和国家代码。以下是我们用于确定地点详细信息结果类型的场景: 状态场景:地址组件有两个项目,第一个项目中有行政区域级别1类型,第二个项目中有国家类型 "address_components" : [ { "long_name" : "California", "short_name" : "CA",

目前,我们正在使用Google places api的address_组件数组来识别搜索的地点是州还是国家。对于州和国家地点,我们将在搜索提交时传递州代码和国家代码。以下是我们用于确定地点详细信息结果类型的场景:

状态场景:地址组件有两个项目,第一个项目中有行政区域级别1类型,第二个项目中有国家类型

  "address_components" : [
     {
        "long_name" : "California",
        "short_name" : "CA",
        "types" : [ "administrative_area_level_1", "political" ]
     },
     {
        "long_name" : "United States",
        "short_name" : "US",
        "types" : [ "country", "political" ]
     }
  ],
国家/地区场景:地址\u组件有1项,其类型有国家/地区

  "address_components" : [
     {
        "long_name" : "United States",
        "short_name" : "US",
        "types" : [ "country", "political" ]
     }
  ],
如果address_components项目列表中有两个以上的项目,则所选地点不被视为州或国家。而像“Oaxaca”或“NewYork”这样的搜索很少会返回地址数组中两个以上的项

瓦哈卡:

  "address_components" : [
     {
        "long_name" : "Oaxaca",
        "short_name" : "Oaxaca",
        "types" : [ "locality", "political" ]
     },
     {
        "long_name" : "Oaxaca",
        "short_name" : "Oaxaca",
        "types" : [ "administrative_area_level_2", "political" ]
     },
     {
        "long_name" : "Oaxaca",
        "short_name" : "Oax.",
        "types" : [ "administrative_area_level_1", "political" ]
     },
     {
        "long_name" : "Mexico",
        "short_name" : "MX",
        "types" : [ "country", "political" ]
     }
  ]
纽约

  "address_components" : [
     {
        "long_name" : "New York",
        "short_name" : "New York",
        "types" : [ "locality", "political" ]
     },
     {
        "long_name" : "New York",
        "short_name" : "NY",
        "types" : [ "administrative_area_level_1", "political" ]
     },
     {
        "long_name" : "United States",
        "short_name" : "US",
        "types" : [ "country", "political" ]
     }
  ]
是否有其他方法可以识别搜索地点详细信息结果(如Oaxaca)
是一个状态(管理区域级别1)

当然,您可以使用随地址组件字段一起返回的类型字段

types[]包含描述给定结果的要素类型数组

就国家而言

你会看到类似的东西

{
  "html_attributions":[

  ],
  "result":{
      "address_components":[
      {
        "long_name":"United States",
        "short_name":"US",
        "types":[
          "country","political"
        ]
      }
      ],
      ... 
      "types":[
         "country","political"
      ],
      ...
  },
  "status":"OK"
} 
{
    "html_attributions":[

    ],
    "result":{
        "address_components":[
        {
            "long_name":"Nebraska",
            "short_name":"NE",
            "types":[
               "administrative_area_level_1","political"
            ]
         },
         {
            "long_name":"United States",
            "short_name":"US",
            "types":[
               "country","political"
             ]
         }
         ],
         ...
         "types":[
             "administrative_area_level_1","political","point_of_interest","establishment"
          ],
          ...
      },
      "status":"OK"
}
{
    "html_attributions":[

    ],
    "result":{
        "address_components":[
        {
            "long_name":"Oaxaca",
            "short_name":"Oaxaca",
            "types":[
               "locality","political"
            ]
         },
         {
            "long_name":"Oaxaca",
            "short_name":"Oaxaca",
            "types":[
                "administrative_area_level_2","political"
             ]
          },
          {
              "long_name":"Oaxaca",
              "short_name":"Oax.",
              "types":[
                 "administrative_area_level_1","political"
              ]
           },
           {
              "long_name":"Mexico",
              "short_name":"MX",
              "types":[
                 "country","political"
              ]
            }
            ],
            ...
            "types":[
                "locality","political"
            ],
            ... 
        },
        "status":"OK"
}
在类似的情况下

{
  "html_attributions":[

  ],
  "result":{
      "address_components":[
      {
        "long_name":"United States",
        "short_name":"US",
        "types":[
          "country","political"
        ]
      }
      ],
      ... 
      "types":[
         "country","political"
      ],
      ...
  },
  "status":"OK"
} 
{
    "html_attributions":[

    ],
    "result":{
        "address_components":[
        {
            "long_name":"Nebraska",
            "short_name":"NE",
            "types":[
               "administrative_area_level_1","political"
            ]
         },
         {
            "long_name":"United States",
            "short_name":"US",
            "types":[
               "country","political"
             ]
         }
         ],
         ...
         "types":[
             "administrative_area_level_1","political","point_of_interest","establishment"
          ],
          ...
      },
      "status":"OK"
}
{
    "html_attributions":[

    ],
    "result":{
        "address_components":[
        {
            "long_name":"Oaxaca",
            "short_name":"Oaxaca",
            "types":[
               "locality","political"
            ]
         },
         {
            "long_name":"Oaxaca",
            "short_name":"Oaxaca",
            "types":[
                "administrative_area_level_2","political"
             ]
          },
          {
              "long_name":"Oaxaca",
              "short_name":"Oax.",
              "types":[
                 "administrative_area_level_1","political"
              ]
           },
           {
              "long_name":"Mexico",
              "short_name":"MX",
              "types":[
                 "country","political"
              ]
            }
            ],
            ...
            "types":[
                "locality","political"
            ],
            ... 
        },
        "status":"OK"
}
城市会有类似的东西

{
  "html_attributions":[

  ],
  "result":{
      "address_components":[
      {
        "long_name":"United States",
        "short_name":"US",
        "types":[
          "country","political"
        ]
      }
      ],
      ... 
      "types":[
         "country","political"
      ],
      ...
  },
  "status":"OK"
} 
{
    "html_attributions":[

    ],
    "result":{
        "address_components":[
        {
            "long_name":"Nebraska",
            "short_name":"NE",
            "types":[
               "administrative_area_level_1","political"
            ]
         },
         {
            "long_name":"United States",
            "short_name":"US",
            "types":[
               "country","political"
             ]
         }
         ],
         ...
         "types":[
             "administrative_area_level_1","political","point_of_interest","establishment"
          ],
          ...
      },
      "status":"OK"
}
{
    "html_attributions":[

    ],
    "result":{
        "address_components":[
        {
            "long_name":"Oaxaca",
            "short_name":"Oaxaca",
            "types":[
               "locality","political"
            ]
         },
         {
            "long_name":"Oaxaca",
            "short_name":"Oaxaca",
            "types":[
                "administrative_area_level_2","political"
             ]
          },
          {
              "long_name":"Oaxaca",
              "short_name":"Oax.",
              "types":[
                 "administrative_area_level_1","political"
              ]
           },
           {
              "long_name":"Mexico",
              "short_name":"MX",
              "types":[
                 "country","political"
              ]
            }
            ],
            ...
            "types":[
                "locality","political"
            ],
            ... 
        },
        "status":"OK"
}

我希望这有帮助类型字段,并且该字段表示结果的类型。如果可以从
types
字段中立即知道结果的类型,我不理解为什么需要分析地址组件中的项数。