2017-10-23 5 views
0

私は現在、Muaz khanのwebrtc firebaseデモをテストしています。 Xirsysを使用するファイルの1つで、使用される資格はMuaz Khanのものです。 xirsysの詳細はバージョンv2です。現在、XirsysはバージョンV3を使用しています。以前のコードを新しいコードに変更する方法が不思議でした。webrtc xirsysをv2からv3に更新するにはどうすればよいですか?

デモで働いている元のコードが、それは私がやったこと

<!-- JS Get ICE STUN and TURN list --> 
<DOCTYPE> 
<html> 
<head> 
    <script 
src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"> 
</script> 
    <script> 
    $(document).ready(function() { 
     $.ajax ({ 
      url: "https://global.xirsys.net/_turn/muazkh/", 
      type: "PUT", 
      async: false, 
      headers: { 
       "Authorization": "Basic " + btoa("muazkh:59d93f26-5b89-11e5-babe-d61aeb366a63") 
      }, 
      success: function (res){ 
       console.log("ICE List: "+res.v.iceServers); 
       } 
     }); 
     }) 
    </script> 
</head> 
<body> 
</body> 
</html> 

ようにする必要があり、新たなXirsysのドキュメントによると

<script type="text/javascript" src="https://gc.kis.v2.scr.kaspersky- 
labs.com/EC7AD6FB-B1E9-9D47-B085-7DB58B77DF98/main.js" charset="UTF-8"> 
</script><script> 
function createCORSRequest(method, url) { 
    var xhr = new XMLHttpRequest(); 
    if ("withCredentials" in xhr) { 
     xhr.open(method, url, true); 
    } else if (typeof XDomainRequest != "undefined") { 
     xhr = new XDomainRequest(); 
     xhr.open(method, url); 
    } else { 
     xhr = null; 
    } 
    return xhr; 
} 
var url = 'https://service.xirsys.com/ice'; 
var xhr = createCORSRequest('POST', url); 
xhr.onload = function() { 
    window.parent.postMessage({ 
     iceServers: JSON.parse(xhr.responseText).d.iceServers 
    }, '*'); 
}; 
xhr.onerror = function() { 
    console.error('Woops, there was an error making xhr request.'); 
}; 
xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); 
window.addEventListener('message', function (event) { 
    if (!event.data || typeof event.data !== 'string') return; 
    if(event.data == 'get-ice-servers') { 
     xhr.send('ident=muazkh&secret=59d93f26-5b89-11e5-babe- 
d61aeb366a63&domain=webrtcexperiment-webrtc.netdna- 
ssl.com&application=default&room=default&secure=1'); 
    } 
}); 
</script> 

であるが、このでしたが、

を動作しませんでした
<head><script> 
function createCORSRequest(method, url) { 
    var xhr = new XMLHttpRequest(); 
    if ("withCredentials" in xhr) { 
     xhr.open(method, url, true); 
    } else if (typeof XDomainRequest != "undefined") { 
     xhr = new XDomainRequest(); 
     xhr.open(method, url); 
    } else { 
     xhr = null; 
    } 
    return xhr; 
} 
var url = 'https://global.xirsys.net/_turn/muazkh/default/default'; 
var xhr = createCORSRequest('PUT', url); 
xhr.onload = function() { 
    window.parent.postMessage({ 
     iceServers: JSON.parse(xhr.responseText).v.iceServers 
    }, '*'); 
}; 
xhr.onerror = function() { 
    console.error('Woops, there was an error making xhr request.'); 
}; 
xhr.setRequestHeader("Authorization", "muazkh:59d93f26-5b89-11e5-babe-d61aeb366a63"); 
window.addEventListener('message', function (event) { 
    if (!event.data || typeof event.data !== 'string') return; 
    if(event.data == 'get-ice-servers') { 
     xhr.send(); 
    } 
}); 
</script> 
</head> 

ここで何か助けていただければ幸いです。ありがとう

答えて

0

ヘッダーの問題のように見えます。権限ヘッダーは、 "基本"認証方式を使用する必要があります。

にあなたのXMLHttpRequestの "setRequestHeader" を変更してください:

xhr.setRequestHeader("Authorization", "Basic "+ btoa("muazkh:59d93f26-5b89-11e5-babe-d61aeb366a63")); 
関連する問題