0
我收到驗證錯誤,例如:「沒有處理指令以'xml ....'開始,當我嘗試驗證我的代碼之後,將其放入我正在使用的第三方應用程序。如何發送帶有Javasript的soap消息,該消息嵌入在XSL頁面中而不會出現此錯誤?這裏是有問題的代碼:Javascript的XSL驗證錯誤
<script language="javascript">
function test1(newSymbol){
var symbol = newSymbol;
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("POST", "http://www.webservicex.net/stockquote.asmx?op=GetQuote",true);
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
alert(xmlhttp.responseText);
// http://www.terracoder.com convert XML to JSON
var json = XMLObjectifier.xmlToJSON(xmlhttp.responseXML);
var result = json.Body[0].GetQuoteResponse[0].GetQuoteResult[0].Text;
// Result text is escaped XML string, convert string to XML object then convert to JSON object
json = XMLObjectifier.xmlToJSON(XMLObjectifier.textToXML(result));
alert(symbol + ' Stock Quote: $' + json.Stock[0].Last[0].Text + '\n' + 'Company Name: ' + json.Stock[0].Name[0].Text);
document.getElementById('price').innerHTML = json.Stock[0].Last[0].Text;
document.getElementById('name').innerHTML = json.Stock[0].Name[0].Text;
}
else if (xmlhttp.readyState == 4 && xmlhttp.status != 200) {
alert('Server Issue');
}
}
xmlhttp.setRequestHeader("SOAPAction", "http://www.webserviceX.NET/GetQuote");
xmlhttp.setRequestHeader("Content-Type", "text/xml");
var xml = '<?xml version="1.0" encoding="utf-8"?>' +
'<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ' +
'xmlns:xsd="http://www.w3.org/2001/XMLSchema" ' +
'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">' +
'<soap:Body> ' +
'<GetQuote xmlns="http://www.webserviceX.NET/"> ' +
'<symbol>' + symbol + '</symbol> ' +
'</GetQuote> ' +
'</soap:Body> ' +
'</soap:Envelope>';
xmlhttp.send(xml);
}
</script>
在我聲明肥皂標題後立即得到var xml =行的錯誤。
感謝您的幫助! :)
所以我想通了,我可以使用SOAP消息字符串本身的CDATA標籤,它的工作。但是,現在我的xmlhttp.open(....)行出現「Access is denied」錯誤。我已經啓用IE瀏覽器misc「允許跨域訪問」。此代碼正在從Https域調用到非安全域...這是爲什麼? 。 – Lucas 2010-06-24 16:34:23