Je suis en train de brancher un script de Microsoft à l'Échelle Mondiale Télescope app. Ce dernier est à l'écoute sur le port 5050 pour les commandes. Il est en cours d'exécution sur la même machine que le navigateur (Chrome, mais aussi loin que je peux dire que le comportement est le même avec Firefox 7 et IE 9).
Je suis de l'envoi d'un "Access-Control-Allow-Origin: *" en-tête du fichier html d'origine pour tenter d'éliminer XSS restrictions mon problème.
Mon code pour accéder à WWT est comme suit:
$.ajax({
type: 'POST',
url: url,
data: data,
crossDomain: true,
success: success,
dataType: dataType
});
url est dans ce cas "http://127.0.0.1:5050/layerApi.aspx?cmd=new et..." (évidemment ... est un raccourci ici pour quelques paramètres supplémentaires).
En regardant les diagnostics du réseau dans Chrome, je peux voir ceci:
Request URL:http://127.0.0.1:5050/layerApi.aspx?cmd=new&...
Request Headersview source
Accept:application/xml, text/xml, */*; q=0.01
Content-Type:application/x-www-form-urlencoded
Origin:http://gwheeler4
Referer:http://gwheeler4/conceptconnect.html
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.186 Safari/535.1
La demande est en train de sortir - je voir WWT faire un nouveau calque. Cependant, je n'ai pas de rappel. Si j'ajoute une erreur de callback qui est appelée, mais l'erreur de propriété sur le jqXHR objet est "d'erreur" et l'état est de 0. Si je regarde le réseau demande dans Chrome, je vois "(annulé)" l'état et pas de réponse.
Si je prends la même URL et la coller dans un nouvel onglet de navigateur, je peux voir que la réponse est le XML.
Bien sûr, une différence ici est que c'est un pas un POSTE, mais j'ai essayé dans mon script et il ne fait aucune différence.
Je suis assez perplexe par ce et apprécie les idées fraîches.