控制器方法不是使用IP调用,而是使用本地主机

问题描述 投票:1回答:1

我正在从javascript Ajax调用中调用Controller方法。当我在以下代码中使用localhost(仅对dev很好)时,它将调用Controller方法,但是如果我使用IP地址(当代码托管在其他Linux盒中时需要IP)代替localhost,则不会调用该方法。

此代码可以正常工作,我可以在浏览器的“网络”标签中看到通话:

var tmpUrl = "https://localhost:<port>/method1?param1=" + value1 + "&param2="+value2;          
$('#serviceBinding').load(tmpUrl);

但是当我使用IP地址代替本地主机时,没有调用控制器方法。

var tmpUrl = "https://xx.xxx.xxx.xx:<port>/method1?param1=" + value1 + "&param2="+value2;
$('#serviceBinding').load(tmpUrl);

下面是弹簧控制器中的方法。

@GetMapping("/method1")
@CrossOrigin(origins = "*", allowedHeaders = "*")
    public String method1(...

我在浏览器中没有看到与CORS相关的任何错误,但在浏览器的“检查”部分中看到了以下错误

GET <full URL> net::ERR_TIMED_OUT
java ajax spring-boot thymeleaf cross-domain
1个回答
0
投票

我认为您无法访问IP地址,您的IP地址没有HTTPS证书或端口不正确。

[尝试使用ping或tracert命令将IP地址ping到CLI中,以检查是否可以访问该IP地址。

还可以在浏览器中打开完整的URL吗?

© www.soinside.com 2019 - 2024. All rights reserved.