こんにちは、次のコードを使用して、Java サーバー アプリケーションから geoJson ファイルをロードしています。問題なく動作し、geojson を openlayers のベクター レイヤーとして表示できます。しかし、サーバー側では、いくつかのパラメーターを geoJson ファイルに保存しており、後でクライアントの JavaScript 側で読み取りたい (パスの合計長やパスの合計時間など)。それらにアクセスする方法がわかりません。 .
これは私が持っているもので、何が機能しますか:
layer = new OpenLayers.Layer.Vector("Path", {
style: style,
strategies: [new OpenLayers.Strategy.Fixed()],
projection: geographic,
protocol: new OpenLayers.Protocol.HTTP({
url: "webresources/getJosmAspects?startLon=" + document.getElementById('startLon').value +
"&startLat=" + document.getElementById('startLat').value +
"&endLon=" + document.getElementById('endLon').value +
"&endLat=" + document.getElementById('endLat').value +
"&avgSpeed=" + document.getElementById('avgSpeed').value +
"&speedWeight=" + document.getElementById('speedInput').value +
"&comfortWeight=" + document.getElementById('comfortInput').value +
"&quietnessWeight=" + document.getElementById('quietInput').value +
"&avgSpeedWeight=" + document.getElementById('shortestInput').value,
format: new OpenLayers.Format.GeoJSON()
})
});
もう一度呼び出すことなく、応答からいくつかのパラメーターを取得したいと思います。サーバーからのgeojsonは次のようになります
{"type":"Feature","geometry":{"type":"LineString","coordinates":[[14.420414,50.07352]......,[14.38296,50.077154],[14.382867,50.077228]]},"properties":{"total_length":3603.656606483625,"total_time":782.4648477846279,"total_elevationGain":130.9226633310318,"total_elevationDrop":-48.82620286941528}}