我敢肯定,這是一個安全問題,讓我不這樣做,但我不知道是否有一個解決方法,我不知道...JavaScript安全阻止我?
我有一個腳本注入用戶的電子郵件到聯繫人數據庫我的客戶,它在IE瀏覽器中轟炸,但在FF,鉻(如往常一樣)工作。只是想知道我是否可以將服務器添加到信任中或使其工作?
<script type="text/javascript">
window.onload = init;
//Global XMLHTTP Request object
var XmlHttp;
function CreateXmlHttp() {
//Creating object of XMLHTTP in IE
try {
XmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
try {
XmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (ex) {
XmlHttp = null;
}
}
//Creating object of XMLHTTP in Mozilla and Safari
if (!XmlHttp && typeof XMLHttpRequest != "undefined") {
XmlHttp = new XMLHttpRequest();
}
}
function init() {
var x = document.getElementsByName("btnContinue");
x[0].onclick = submitForm;
}
function submitForm() {
var x = document.getElementsByName('Email');
if (x[0].value.length > 0) {
CreateXmlHttp();
XmlHttp.open("POST", "https://app.icontact.com/icp/signup.php", false);
XmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
XmlHttp.send("redirect='http://www.xyz.com/articles.asp?ID=97'&errorredirect='http://www.xyz.com/articles.asp?ID=256'&fields_email=" +
x[0].value + "&listid=123&specialid:123=YP7I&clientid=123&formid=123&reallistid=1&doubleopt=0&Submit=Submit");
}
}
</script>
我很感激任何見解。
謝謝!
這將使用ajax更少的代碼http://api.jquery.com/jQuery.ajax/ –
看起來像它可能是一個同源的政策問題。如果您有權訪問https://app.icontact.com/,則可以嘗試設置訪問控制請求頭以允許您的域發出POST請求。 – JackWink
我有點受到限制,因爲我正在處理我實際上無法控制的網頁。該頁面託管在其中一個第三方站點構建器上,只允許通過頁面上的預定義區域注入代碼......可以對其進行攻擊。所以我真的不能創建新的表單或導入庫,除非他們全部隱藏。我應該注意到這在Firefox中工作得很好。只在IE中爆炸。 – TomO