こんにちは、XMLHTTPRequest でデータを要求するには、外部サーバーに接続する必要があります。ページを作成しましたが、リクエストを送信すると、次のエラーが返されます。
エラー!パーサー: 要求 XML (oracle.xml.parser.v2.XMLParseException: ルート要素の開始が予期されました。エラー番号: 4001)
解析の問題なのか、文字の問題なのか、それとも何か他の問題なのかはわかりません。これは私のスクリプトコードです:
<script type="text/javascript">
var req = null ;
var firsttime = false;
function sendRequest(){
var urlStr="http://mylink.it";
var xmlString="";
xmlString="<?xml version='1.0' encoding='UTF-8'?><BOOKING type='COR' lang='it-IT' returnURLNeed='no' returnURL='http://' AGENTCODE='XXXX' AGENTPASSWORD='YYYY' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:noNamespaceSchemaLocation='http://link/schema/CountryRequestV6Snd.xsd'><DATA ALL_COUNTRIES='YES'/></BOOKING>";
createHTTPRequestObject();
var resp = getResponseText(urlStr+"?"+xmlString,null);
}
function createHTTPRequestObject(){
req=null ;
var pXmlreq = false ;
if (window.XMLHttpRequest) {
pXmlreq = new XMLHttpRequest();
}
else if (window.ActiveXObject) {
try{
pXmlreq = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e1) {
try{
pXmlreq = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e2) {
}
}
}
req = pXmlreq ;
}
function getResponseText(action,query,method,async,contenttype){
if(method==null){
method="POST";
}
if(async==null){
async="true";
}
if(contenttype==null){
contenttype = "application/x-www-form-urlencoded";
}
console.log("open");
req.onreadystatechange= function() {
if (req.readyState == 1) {
if (firsttime==false){
firsttime = true;
req.setRequestHeader("Content-Type", contenttype);
if(query){
console.log("send request");
req.send(query);
}else{
console.log("send request2");
req.send();
}
}
}
if (req.readyState >= 4) {
var serverResponse = req.responseText;
console.log(serverResponse);
}
}
req.open(method,action, async);
}
</script>
私の投稿リクエスト POST
/trlink/link1/trlink?<?xml%20version='1.0'%20encoding='UTF-8'?><BOOKING%20type='COR'%20lang='it-IT'%20returnURLNeed='no'%20returnURL='http://'%20AGENTCODE='XXX'%20AGENTPASSWORD='YYY'%20xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'%20xsi:noNamespaceSchemaLocation='http://link/CountryRequestV6Snd.xsd'><DATA%20ALL_COUNTRIES='YES'/></BOOKING> HTTP/1.1