LeafletJS地理信息系统路由加载失败:net::ERR_CONNECTION_REFUSED问题求助
问题分析与解决方案
核心问题:连接拒绝错误
net::ERR_CONNECTION_REFUSED 说明前端程序无法连接到 http://localhost:8989/route 接口,本质是提供路由服务的后端程序未运行,或端口配置不匹配。
排查与修复步骤
确认后端路由服务是否启动
你代码中的请求参数(如ch.disable、weighting=shortest)符合GraphHopper路由服务的接口规范,先检查GraphHopper服务是否正常运行:- 执行GraphHopper启动命令(如
./graphhopper.sh web your-osm-file.pbf) - 直接访问
http://localhost:8989,若能看到GraphHopper页面则服务正常;若无法访问,说明服务未启动或启动失败。
- 执行GraphHopper启动命令(如
核对端口配置是否一致
检查GraphHopper配置文件(config.yml)中的监听端口是否为8989,若端口已修改,需同步调整前端代码里的URL端口。清理AJAX冗余配置
你的请求是GET类型,contentType: "application/json"属于冗余配置(GET请求无需设置请求体类型),删除该配置可避免潜在格式问题,修改后代码片段:$.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', success: function (data) { // 原有逻辑代码 } });添加错误回调定位问题
当前代码缺少错误处理逻辑,建议添加error函数,方便快速排查请求异常:$.ajax({ // 原有配置项 error: function(xhr, status, error) { console.error("路由请求失败:", status, error); console.error("请求地址:", this.url); } });
内容的提问来源于stack exchange,提问作者Lee Je
相关产品推荐
相关产品推荐

