如何在谷歌地图 api 中使用 provideRouteAlternatives=true?

Gui*_*doG 1 c# winforms google-maps-api-3

目前,我通过执行以下操作获得了我的 c# winforms 应用程序中 2 个地方之间的距离:

string requesturl = "http://maps.google.com/maps/api/directions/json?origin=" + origin + "&destination=" + destination + "&sensor=false;
string content = fileGetContents(requesturl);

JObject o = JObject.Parse(content);
distance = (decimal)o.SelectToken("routes[0].legs[0].distance.value") / 1000;

private static string fileGetContents(string fileName)
{
    string sContents = string.Empty;
    string me = string.Empty;
    try
    {
        if (fileName.ToLower().IndexOf("http:") > -1)
        {
            System.Net.WebClient wc = new System.Net.WebClient();
            byte[] response = wc.DownloadData(fileName);
            sContents = System.Text.Encoding.ASCII.GetString(response);
        }
        else
        {
            System.IO.StreamReader sr = new System.IO.StreamReader(fileName);
            sContents = sr.ReadToEnd();
            sr.Close();
        }
    }
    catch { sContents = "unable to connect to server "; }
    return sContents;
}
Run Code Online (Sandbox Code Playgroud)

这很有效,但它总是返回最快的路线,而不是最短的路线。

我想获得最短距离,所以我想添加provideRouteAlternatives=true到对 google api 的调用中。然后我可以在每个路径中的文件中搜索以获得最短路径。
但是我该怎么做呢?
需要说明的是,如果返回的路线不止一条,我知道如何调整我的代码以在每条路线中进行搜索,问题是如何让此参数开始工作,以便返回不止一条路线。

我试过这个:

string requesturl = "http://maps.google.com/maps/api/directions/json?origin=" 
    + origin + "&destination=" 
    + destination + "&sensor=false&provideRouteAlternatives=true";
Run Code Online (Sandbox Code Playgroud)

但它似乎没有做任何事情。当我用相同的地址向谷歌询问路线时,我确实得到了不止一条路线,但这个 api 没有。

我做错了什么还是不可能像这样?也许我需要 javascript 或其他东西,这可能在 winforms 中吗?一个例子会很好。

Gui*_*doG 5

找到了,我使用了错误的参数。
我必须使用alternatives=true 而不是provideroutealternatives=true

编辑
我在尝试不同的事情时偶然发现了这一点,有一次我只是尝试alternatives代替,provideroutealternatives令我惊讶的是它有效并且仍然有效。文档仍然写了 providerroutealternatives 并且该参数仍然不起作用。所以我猜测谷歌的开发人员和文档编写者之间存在一些误传。

编辑

@MrEduar 向我指出我正在阅读错误的文档。
provideRouteAlternatives用于javascript库,
alternatives用于方向 api

所以文档毕竟是正确的,你只需要小心使用正确的文档。在那里很容易出错。