是否可以将数据从一个网址发布到另一个网址?
问题描述:
这是我的Ajax代码,是否可以将数据从一个网址发布到另一个网址?
例如URL 1:www.text1.com和URL 2:www.text2.com/check.asp
在这里,我棒后数据从text1.com到text2.com ....
这可能吗?
<script type="text/javascript">
function ajaxFunctionSearch() {
var xmlHttp;
try {
xmlHttp = new XMLHttpRequest();
}
catch(e) {
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e) {
alert("Your browser does not support AJAX!");
return false;
}
}
}
xmlHttp.onreadystatechange = function() {
if (xmlHttp.readyState == 4) {
document.getElementById("SXML").value = xmlHttp.responseText;
}
}
var params = "CountryID=" + document.getElementById("DEMOCNY").value
xmlHttp.open("POST", "http://text2.com/Check.asp", true);
xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlHttp.setRequestHeader("Content-length", params.length);
xmlHttp.setRequestHeader("Connection", "close");
xmlHttp.send(params);
}
</script>
答
否 - JavaScript的安全性限制是它无法与不同于该页面所服务的域进行通信。
如果您的网页由www.text1.com提供,那么您只能向域www.text1.com上的其他页面发送请求。
答
的same origin policy无因,总之你JavaScript可以只讲到服务器上的同一个域有它从得到的页面。
您必须制作一些服务器脚本才能发布到您的www.test2.com
。
你可以在那里看看如何在C#中建立一个proxy,基本上你必须使用HttpWebRequest
来将ajax调用转发到www.test2.com
。
此外,如果两个服务器都在柜子里,你可能最好做DB插入或任何类型的处理直接,如果你可以。
答
像以前的回答者说的那样,原则上不可能。但是最近开发的技术允许在某些情况下跨域请求。
谷歌对于CORS或看看这里:hacks.mozilla.org。 IE8还包含一个XDomainRequest object,但我从来没有使用过。
但它们仍然是非常的alpha,而不是任何人都会称之为跨浏览器技术。
什么类型的服务器脚本..,你可以帮我...因为,这两个网站在我的控制 – Alex 2009-11-19 08:39:18
你使用什么服务器语言? – RageZ 2009-11-19 08:42:10
服务器语言是经典的ASP – Alex 2009-11-19 08:43:25