0

Google マップの地理位置情報 API からの json 応答を解析しようとしています。次のコードで json 応答を取得しています。

     set xmlHTTP = server.createobject("MSXML2.ServerXMLHTTP.6.0")
     xmlHTTP.open "GET", "https://maps.googleapis.com/maps/api/distancematrix/json?origins=50.9255685,29.2703104&destinations=46.446251,28.570993&mode=driving&language=sv-SE&sensor=false", false
     xmlHTTP.send()
     LatLongFeed = xmlHTTP.ResponseText

住所の値を取得しようとしました(出発地と目的地で、距離を取得しようとしましたが、うまくいきません。

従来の ASP コードで使用できるように、応答で値を取得するにはどうすればよいですか?

4

2 に答える 2

0

私はさまざまな種類のソリューションを試しましたが、これは JSON クラス ( http://www.aspjson.com/ )に基づいています。

Set oJSON = New aspJSON

'Load JSON string
oJSON.loadJSON("https://maps.googleapis.com/maps/api/distancematrix/json?origins=" & rs("LatiStart")& "," & rs("LongStart")& "&destinations=" & rs("LatiStop")& "," & rs("LongStop")& "&mode=driving&language=sv-SE&sensor=false")

'Get single value
Response.Write oJSON.data("distance") & "<br>"

'Loop through collection
For Each subItem In oJSON.data("distance")
    Response.Write subItem & ": " & _
    oJSON.data("distance").item(subItem) & "<br>"
Next

'Return the object
Response.Write oJSON.JSONoutput()

これを実行すると、 LineNumber 55 ErrorCode 800a01c3 Description Object not a collection が表示されます

行 55 は (For Each subItem In oJSON.data("distance")) です。

私の例の json 応答は、例の座標に基づいており、実際の場所ではありません。アドレスには標準 az のみが含まれています。

于 2013-10-17T19:16:20.927 に答える