Вместо того, чтобы усложнять ситуацию с помощью скрипта proxy
, вы можете использовать API Fetch
и дать ему команду выполнить запрос CORS
напрямую - API Fetch
очень прост в использовании, что является бонусом.
Когда вы смотрите на документацию , это может показаться немного сложным, если вы знакомы с простотой вызовов XMLHttpRequest, но это того стоит, так как вся методология, основанная на Promise
, - это путь вперед. .
Этот код работал для известного URL, но не может быть проверен для вашей конечной точки ...
<!DOCTYPE html>
<html lang='en'>
<head>
<meta charset='utf-8' />
<title>Fetch & Parse XML</title>
<script>
document.addEventListener('DOMContentLoaded',()=>{
const url='http://db1.SITENAME.com:8080/WEB_API/awb_ref_query.asmx/awb_ref_query_xml?str_awb_refno=160230230&str_awb_refno_type=AWB&str_userid=testapi&str_pwd=testapi';
const config={
mode:'cors',
credentials:'omit',
cache:'default',
redirect:'follow'
};
const callback=function(r){
let oParser=new DOMParser();
let data=oParser.parseFromString( r, 'text/xml' );
/* do something with the parsed XML document... */
console.info( data );
};
fetch( url, config ).then( response => {
return response.text();
}).then( xml => {
callback( xml )
}).catch( error => {
alert( error )
})
});
</script>
</head>
<body>
<!-- content -->
</body>
</html>