2016-04-27 14 views
1

Xmlを他のサーバー(旅行会社のWebサービス)に送信し、Xmlでレスポンスを受け取る必要があります XMLリクエストの例は です。 .................................................. .................................................. ..................................................XMLリクエストを送信し、AjaxまたはJavascriptを使用して他のサーバーからXMLレスポンスを受信します

<?xml version="1.0" encoding="UTF-8"?> 
    <Request RequestType="getCountryRequest"> 
     <AuditInfo> 
      <RequestId> 
       001 
      </RequestId> 
      <RequestUser> 
       user 
      </RequestUser> 
      <RequestPass> 
       password 
      </RequestPass> 
      <RequestTime> 
       2012-09-04T18:00:46 
      </RequestTime> 
      <RequestLang> 
       RO 
      </RequestLang> 
     </AuditInfo> 
     <RequestDetails> 
      <getCityRequest CountryCode="RO"/> 
     </RequestDetails> 
    </Request> 

、応答が

<?xml version="1.0" encoding="utf-8"?> 
<Response ResponseType="getCityResponse"> 
    <AuditInfo>  
     <ResponseId> 
      12940524 
     </ResponseId>  
     <RequestId> 
      12949986 
     </RequestId>  
     <ResponseTime> 
      2012-09-04T18:10:02 
     </ResponseTime> 
    </AuditInfo> 
    <ResponseDetails>  
     <getCityResponse>  
      <City>   
       <CountryCode> 
        ENG 
       </CountryCode>   
       <CityCode> 
        ENG 
       </CityCode>   
       <CityName> 
        Madrid 
       </CityName> 
      </City> 
     </getCityResponse> 
    </ResponseDetails> 
</Response> 

のように見える必要があります私を助けてください!

答えて

1

それは(jQueryの使用)これに近いものでなければなりません: ` は、私が思う` <?= "1.0" エンコードは= "UTF-8" XMLバージョン>:

var query = '<?xml version="1.0" encoding="UTF-8"?><Request RequestType="getCountryRequest"><AuditInfo><RequestId>001</RequestId>'+ 
      '<RequestUser>user</RequestUser><RequestPass>password</RequestPass><RequestTime>2012-09-04T18:00:46</RequestTime><RequestLang>'+ 
      'RO</RequestLang></AuditInfo><RequestDetails><getCityRequest CountryCode="RO"/></RequestDetails></Request>'; 

    $.ajax({ 
    url: 'YOUR_URL_HERE', 
    data: query, 
    type: 'POST', 
    contentType: "text/xml", 
    dataType: "text", 
    success : function (xmlResponse){ 
     xmlResponse = $.parseXML(xmlResponse), 
     $xml = $(xmlResponse), 
     $title = $xml.find("ResponseId"); //to get the ResponseId for example 
    }, 
}); 
+0

での競合があります問題は

+0

です。エラーが現れます: 'XMLHttpRequestはhttp://paradis.touringit.ro/server_xml/server.phpを読み込めません。プリフライト要求への応答がアクセス制御チェックを通過しない:要求されたリソースに「アクセス制御許可」がない。 Origin 'http://all-in-one.wdigital.md'はアクセスが許可されていません。 –

+0

これは私が心配していたことですが、apiサーバはクロスドメインのajaxクエリを許可していないようです。 cUrlまたは他のサーバーサイドスクリプトを使用してリクエストします。 –

関連する問題