我有一个简单的 MVC Web 应用程序,其中 javascript 代码将 ajax 请求发送到控制器,控制器发回响应。
我在 2 年前构建了该应用程序,过去一切正常。现在我尝试在本地再次运行该应用程序并遇到以下问题:每当从前端向控制器发送 Ajax 请求(在本地主机上运行)时,本地主机拒绝连接并且我在(chrome 的)javascript 中收到 ERR_CONNECTION_REFUSED 消息-安慰。(在 Safari 的 javascript-console 中,我收到以下错误消息:“加载资源失败:无法连接到服务器。”)
我正在使用 NetBeans 11.2 运行该应用程序。我的 NetBeans IDE 使用 GlassFish 作为服务器:
我从 NetBeans IDE 中删除了 Glassfish 服务器,在我的主目录中删除了它的文件夹,然后在我的 NetBeans IDE 中再次添加了 Glassfish 服务器(这还需要下载最新版本的 Glassfish 服务器)。
尽管如此,服务器仍拒绝接受来自前端的任何请求。
我还尝试使用 Payara Server(版本 5.193)。那也没有什么不同。
顺便说一下,前端本身乍一看还不错。也就是说,访问http://localhost:8080/myapp会加载应用程序的前端。但是,应用程序的任何动态功能都不起作用,因为服务器拒绝接受来自前端的任何 Ajax 请求(并通过鼠标单击启动)。
我怎样才能解决这个问题?
我想我找到了问题的原因:
在我的 javascript 文件中,我有以下代码行:
var url = "http://localhost:8080/myapp/Controller";
变量“url”被传递给发送到 localhost 的所有 AJAX 请求。但这里是疯狂的事情:AJAX 请求不是发送到“ http://localhost:8080/myapp/Controller ”,而是发送到“ http://localhost:8081/myapp/Controller ”!!!!!!
这到底是怎么回事?!