使用JSON(跨域)将数据发送到php
我的代码是server1,PHP代码是server2。两台服务器是分开的。这个代码有什么问题使用JSON(跨域)将数据发送到php,php,javascript,ajax,json,Php,Javascript,Ajax,Json,我的代码是server1,PHP代码是server2。两台服务器是分开的。这个代码有什么问题 var hr = new XMLHttpRequest(); hr.open("POST", "http://www.3675design.com/Clients/hl/developers/cyber/itgetbetter/email/index.php", true); hr.setRequestHeader("Content-type", "application/x-www-form-urle
var hr = new XMLHttpRequest();
hr.open("POST", "http://www.3675design.com/Clients/hl/developers/cyber/itgetbetter/email/index.php", true);
hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
hr.onreadystatechange = function () {
if (hr.readyState == 4 && hr.status == 200) {
var data = JSON.parse(hr.responseText);
for (var obj in data) {
document.getElementById("conformation_and_error_header").innerHTML = "Video";
document.getElementById("conformation_and_error_body").innerHTML = "Share yor video";
$(document).ready(function () {
$(".inline_popup_display_2").colorbox({
inline: true,
width: "50%"
});
});
}
}
}
hr.send("name=" + name + "&mail=" + mail + "&youtube=" + youtube + "&comments=" + comments + "");
在PHP代码中,您可以添加允许跨域访问的响应头:
header("Access-Control-Allow-Origin:*");
在JS代码中,如果要发布json字符串而不是k-v,则应更改请求头:
//hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
hr.setRequestHeader("Content-type", "application/json");
控制台有错误吗?是什么让您认为存在问题?如果是跨域请求,则在本例中,您的服务器端index.php应包含访问控制allow origin:*设置为允许跨域请求以获取更多信息,请参阅和