Bing地图地理编码器的结果不一致 [英] Inconsistent Results from Bing Maps Geocoder

查看:16
本文介绍了Bing地图地理编码器的结果不一致的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我编写了一个应用程序,用于解析CSV文件、提取地址并使用Bing Maps rest API对其进行地理编码。我遇到的问题是,如果我多次运行同一文件,我会得到不同的结果。在第一次尝试时,第2行和第6行可能不返回匹配项。在下面的试验中,第2行和第6行将返回匹配项,而第4行可能不会。我使用Fiddler检查了HTTP流量。我的请求格式正确,每个响应都返回HTTP状态代码200和有效的JSON,只有一些地址会产生结果,而另一些地址则不会,并且特定地址的成功或失败在不同的试验中会有所不同。有谁能提供一些见解吗?

更新


示例请求:

GET http://dev.virtualearth.net/REST/v1/Locations?o=json&adminDistrict=MI&locality=Shelby&postalCode=49455-1299&addressLine=72+South+State+Street&key={MyApiKey} HTTP/1.1
Host: dev.virtualearth.net

回复示例:

HTTP/1.1 200 OK
Cache-Control: no-cache
Transfer-Encoding: chunked
Content-Type: application/json
Server: Microsoft-IIS/8.0
X-BM-TraceID: 9b6cfaa0abdb47b7b7e2790900bcddce
X-BM-Srv: BL2M001304, BL2MSNVM001275, BL2MSNVM001299
X-MS-BM-WS-INFO: 0
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Fri, 22 Feb 2013 15:14:30 GMT

247
{
    "authenticationResultCode":"ValidCredentials",
    "brandLogoUri":"http://dev.virtualearth.net/Branding/logo_powered_by.png",
    "copyright":"Copyright © 2013 Microsoft and its suppliers. All rights reserved. This API cannot be accessed and the content and any results may not be used, reproduced or transmitted in any manner without express written permission from Microsoft Corporation.",
    "resourceSets":
    [
        {
            "estimatedTotal":0,
            "resources":[]
        }
    ],
    "statusCode":200,
    "statusDescription":"OK",
    "traceId":"9b6cfaa0abdb47b7b7e2790900bcddce|BL2M001304|02.00.83.1900|BL2MSNVM001275, BL2MSNVM001299"
}
0

我在MSDN论坛上的帖子:http://social.msdn.microsoft.com/Forums/en-US/bingmapsservices/thread/c7fea1b2-f87e-40c2-a3a6-496989a338b2#b885ca9a-018a-491f-9caa-a00a515cf9a8

推荐答案

必应地图密钥和速率限制信息

我确信您使用的是Bing地图密钥,它可能是试用密钥或基本密钥。这种类型的密钥由于明显的原因(24小时周期和请求之间的时间)受到速率限制,这就是为什么您会收到空白响应,而没有任何关于它无法进行地理编码的信息。

有关限制和其他限制的使用条款(压力测试和锤击是其中的一部分):http://www.microsoft.com/maps/product/terms.html

因此,为了解决您的问题,您应该:

  • 检查您正在使用的密钥类型以及在特定时间段内您拨打的电话数
  • 检查响应的头部,它应该包含一个特定的头部值:X-MS-BM-WS-INFO设置为1

有关错误处理的信息,请参阅MSDN:http://msdn.microsoft.com/en-us/library/ff701703.aspx

如果您不在这种情况下(如果您有企业帐户),请联系技术支持,以便他们可以正式与您联系并检查密钥。

其他信息:

由于您使用的是CSV地理编码器,我强烈建议您使用Bing地图空间数据服务来执行批量地理编码,请参阅MSDN上的完整信息:http://msdn.microsoft.com/en-us/library/ff701733.aspx

它将减少您将进行的事务数(每个地理编码数据流作业计入1个事务,并且每个文件可以包含超过200,000个实体)。

这篇关于Bing地图地理编码器的结果不一致的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆