我想用这个脚本来计算旅程距离。很简单。除此之外,Bing Maps本身会返回不同的答案。好的,我明白了。但我喜欢的是一种选择最佳"一。我如何定义最佳?那个Bing会选择的那个。例如,在这种情况下,它是11.9英里(而且是正确的)。
然而剧本认为它是182英里 - 如果它使用不同的沙特尔沃思/贝德福德就是如此。
如何让它给我一个Bing会选择的那个?
出于我使用此脚本的目的,我无法选择"选择",它需要自行决定。
<?php
$from="Bedford";
$to="Shuttleworth";
$load="http://dev.virtualearth.net/REST/v1/Routes?wp.1=$from&wp.2=$to&key=MYAPIKEY&distanceUnit=mile";
$data= file_get_contents($load);
echo $data;
?>
答案 0 :(得分:0)
为了测试这一点,我不会获得Bing API密钥,因此在您自己测试之前不要非常兴奋。
我怀疑正在发生的事情是,Bing正在使用它认为是您当前位置的内容来确定贝德福德和沙特尔沃思的意思。因此,如果它认为你在英格兰,你会得到贝德福德和沙特尔沃思英格兰,如果你在世界其他地方有贝德福德和沙特尔沃思,它会选择那些。我在德克萨斯州,我得到了你想要的11.9英里路线。因此Bing可能很聪明地知道,除了靠近182英里的贝德福德和沙特尔沃思之外,在世界的每个地方,人们都在寻找英国人。我猜你的代码所在的服务器是错误的Bedford和Shuttleworth。
所以我正在查看API,并在Bing API User Context Parameters记录了UserLocation参数,您可以在其中输入纬度和经度来帮助Bing做出决策。尝试将该参数添加到您的查询中并输入您的实际经度和纬度,或者,如果失败,请尝试在美国德克萨斯州奥斯汀(我所在的地方)或在贝德福德和沙特尔沃思之间轻轻一击感兴趣的。