So beheben Sie das Problem: „Ressource konnte nicht geladen werden: net::ERR_CONNECTION_REFUSED http://localhost:8989/route?....'
P粉475315142
P粉475315142 2023-11-12 19:34:27
0
1
945

Es gibt ein Problem mit meinem Programm. Dies ist ein Programm über geografische Informationssysteme, das die LeatlefJs-Bibliothek verwendet, und ich habe auch die Letlef-Router-Funktion verwendet. Das Problem ist, dass das System nicht in der Lage ist, die Route anzuzeigen, die es eigentlich darstellen sollte, das verstehe ich nicht ganz. Hier ist das Skript.

function getDirectRoute(index, callbackFunction){
            var dari = marker_awal.getLatLng().lat + "," + marker_awal.getLatLng().lng;
            var tujuan = markerCabang[index].getLatLng().lat + "," + markerCabang[index].getLatLng().lng;
            $.ajax({
                  type: "GET",
                  url: "http://localhost:8989/route?point=" + dari + "&point=" + tujuan + "&points_encoded=false&instructions=false&vehicle=motorcycle&ch.disable=true&weighting=shortest&algorithm=alternative_route",
                  dataType: 'json',
                  contentType: "application/json",
                  success: function (data) {
                    successReveived++;
                    var coordinates = data.paths[0].points.coordinates;
                    tempDistance = 0;      
                    for(var j=0; j<coordinates.length; j++){
                        if(j==0){
                            tempDistance += euclidean(marker_awal.getLatLng().lat, marker_awal.getLatLng().lng, coordinates[j][1], coordinates[j][0]);
                        } else {
                            tempDistance += euclidean(coordinates[j-1][1], coordinates[j-1][0], coordinates[j][1], coordinates[j][0]);
                        }
                    }
                    distanceGH[index] = data.paths[0].distance;
                    distanceManual[index] = tempDistance.toFixed(4);
                    
                    if(successReveived == markerCabang.length && typeof(callbackFunction == 'function')){
                        callbackFunction();
                    }
                  }
            });
        }

Der Fehler ist so

Ressource konnte nicht geladen werden: net::ERR_CONNECTION_REFUSED http://localhost:8989/route?point=3.611967691620835,98.67254734039308&point=3.611126,98.67548&points_encoded=false&instructions=false&vehicle=motorcycle&ch .dis able=true&weighted=shortest&algorithm=alternative_route

P粉475315142
P粉475315142

Antworte allen(1)
P粉819533564

(我还不能发表评论,所以试图帮助你回答)

  1. 确保您有一个有效的后端来响应 JS 库(请参阅 https://www.liedman.net/leaflet-routing-machine/tutorials/alternative-routers/ 对于有效的后端)
  2. 尝试直接在浏览器中输入 URL(不使用 Leaflet 或其他任何内容):http://localhost:8989/route -> 您应该看到 JSON 输出,即使它显示格式错误或无效的请求。如果您已经遇到网络问题,则需要检查网络层(例如防火墙、后端端口绑定等),如果情况并非如此,请继续。
  3. 在浏览器开发工具 (F12) 中打开网络选项卡并过滤与后端的所有连接。现在尝试使用 map / leafletJS 并检查该选项卡中的其他信息。您可能会看到一条错误消息,表明您的浏览器由于与跨源请求 (CORS) 相关的问题而阻止了该请求。
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage