Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter MapBox api中的反向地理编码不起作用_Flutter_Mapbox_Reverse Geocoding_Mapbox Gl - Fatal编程技术网

Flutter MapBox api中的反向地理编码不起作用

Flutter MapBox api中的反向地理编码不起作用,flutter,mapbox,reverse-geocoding,mapbox-gl,Flutter,Mapbox,Reverse Geocoding,Mapbox Gl,正向地理编码非常完美,现在我想使用反向地理编码,并不断得到一个Http状态错误422。反向地理编码在地图盒中也不起作用。对此有何建议或理由 这是我的http请求: https://api.mapbox.com/geocoding/v5/mapbox.places/32.70972385426521,-117.15991102159023.json?types=place&access_token=[MAPBOX TOKEN HERE] Http 422错误是一个不可处理的实体,这意味着

正向地理编码非常完美,现在我想使用反向地理编码,并不断得到一个Http状态错误422。反向地理编码在地图盒中也不起作用。对此有何建议或理由

这是我的http请求:

https://api.mapbox.com/geocoding/v5/mapbox.places/32.70972385426521,-117.15991102159023.json?types=place&access_token=[MAPBOX TOKEN HERE]

Http 422错误是一个不可处理的实体,这意味着您有良好的格式良好的请求,但在语义上它无法被处理-可能与使用的数据有关

:

修复422不可处理的实体错误并非易事。这个 对于每个场景,解析路径可能会有很大的不同。但是, 在上述422状态的RFC定义中,错误 当您的数据不正确时发生;或者因为没有更好的条件, 没有逻辑意义

尝试查看您的数据,以验证您是否有 在您的请求中未正确定义特定数据段

422不可处理实体状态代码表示服务器 了解请求实体的内容类型,因此 415不支持的媒体类型状态代码不正确,并且 请求实体的语法是正确的,因此请求是错误的 状态代码不适当,但无法处理包含的 指示

您确定输入的数据正确吗


…32.70972385426521,-117.15991102159023.json?

您已反转lat lng

执行此请求:

curl --location --request GET \
'https://api.mapbox.com/geocoding/v5/mapbox.places/-117.15991102159023,32.70972385426521.json?types=place&access_token=TOKEN'
结果是:

{
    "type": "FeatureCollection",
    "query": [
        -117.15991102159023,
        32.70972385426521
    ],
    "features": [
        {
            "id": "place.11741308809618150",
            "type": "Feature",
            "place_type": [
                "place"
            ],
            "relevance": 1,
            "properties": {
                "wikidata": "Q16552"
            },
            "text": "San Diego",
            "place_name": "San Diego, California, United States",
            "bbox": [
                -117.266223298428,
                32.534171982,
                -116.853118984,
                33.0722089336828
            ],
            "center": [
                -117.1628,
                32.7174
            ],
            "geometry": {
                "type": "Point",
                "coordinates": [
                    -117.1628,
                    32.7174
                ]
            },
            "context": [
                {
                    "id": "region.9697035897738010",
                    "short_code": "US-CA",
                    "wikidata": "Q99",
                    "text": "California"
                },
                {
                    "id": "country.19352517729256050",
                    "short_code": "us",
                    "wikidata": "Q30",
                    "text": "United States"
                }
            ]
        }
    ],
    "attribution": "NOTICE: © 2020 Mapbox and its suppliers. All rights reserved. Use of this data is subject to the Mapbox Terms of Service (https://www.mapbox.com/about/maps/). This response and the information it contains may not be retained. POI(s) provided by Foursquare."
}

找到了答案。反向编码格式首先采用经度,然后采用纬度。简单的修复,但不是lat/long格式的通用结构。现在工作正常,我在http请求中交换了它们,如下所示:


这里有代币]

谢谢。和你发帖子的时间差不多。谢谢你的正确回答。我竖起大拇指: