Javascript 获取主机URL+;发生错误时的目标URL
我正在使用Ajax POST调用从位于另一台服务器上的文件中获取一些数据,但是我正在获取我的主机URL+目标URL作为我的Ajax URL的URLJavascript 获取主机URL+;发生错误时的目标URL,javascript,php,jquery,ajax,url,Javascript,Php,Jquery,Ajax,Url,我正在使用Ajax POST调用从位于另一台服务器上的文件中获取一些数据,但是我正在获取我的主机URL+目标URL作为我的Ajax URL的URL 我的主机URL:192.168.1.2 我的目标URL:192.168.1.7/var/www/html/pfe/ajax.php 如何仅获取目标URL var url = "192.168.1.7/var/www/html/pfe/ajax.php"; $("#c1.on").click(function () { $.ajax({
- 我的主机URL:192.168.1.2
- 我的目标URL:192.168.1.7/var/www/html/pfe/ajax.php
var url = "192.168.1.7/var/www/html/pfe/ajax.php";
$("#c1.on").click(function () {
$.ajax({
url: url,
type: 'POST',
data: { on : true, pin : 16 },
success: function(data){
$("#c1.on").addClass("hide");
$("#c1.off").removeClass("hide");
}
});
});
我得到的URL:192.168.1.2/192.168.1.7/var/www/html/pfe/ajax.phpURL语法不正确。如果URL中没有
/
,它将被视为与当前页面位于同一服务器上的文件名。因此,它应该是:
var url = "//192.168.1.7/var/www/html/pfe/ajax.php";
/
表示下一个组件是服务器的名称或地址
并不是说,由于跨域AJAX受到限制,这可能仍然不起作用。AJAX通常不允许跨域使用。如果您使用IP地址,任何不同的地址都会被视为不同的域。您还需要将
/
放在服务器名称或地址之前。否则,它将被视为路径的一部分,而不是服务器。感谢您的解释如果您可以访问两台有问题的服务器(您可能会看到您是如何在localhost上工作的),那么您可以进一步查看访问控制允许来源
标题。这允许您在接收/响应服务器上设置和控制允许发送/接收外部AJAX跨域请求的用户(哪台服务器)。这是一个默认启用的安全功能。还有跨域
方法:感谢您的帮助:)是否有任何解决方案可以使用从一台服务器到另一台服务器的ajax调用?关于跨域ajax有数百个问题。读一些。