Solicitação de ajax entre subdomínios negada mesmo quando document.domain está definido corretamente

No meu aplicativo, tenho um site em um subdomínio (dev.u413.com) e uso o jQuery para fazer uma solicitação ajax para uma API JSON em outro subdomínio (api.u413.com). Quando inspeciono as solicitações nas ferramentas de desenvolvimento do Chrome e no Firefox Firebug, parece que minhas solicitações estão sendo impedidas peloAccess-Control-Allowed-Origin. Eu colocodocument.domain para um sufixo do domínio atual:document.domain = 'u413.com';.

Aqui está o meu pedido:

    $.ajax({
        dataType: 'json',
        data: { parseAsHtml: true, cli: 'help' },
        url: 'http://api.u413.com/',
        success: function (response) {
            alert(response.Command);
        }
    });

Se eu modificar a solicitação ajax para estar no mesmo domínio, a solicitação será bem-sucedid

    $.ajax({
        dataType: 'json',
        crossDomain: false,
        data: { parseAsHtml: true, cli: 'help' },
        url: 'http://dev.u413.com/',
        success: function (response) {
            alert(response.Command);
        }
    });

Por que isso acontece? O navegador não deve reclamar de problemas entre domínios desde que eu definadocument.domain para um sufixo comum de ambos os subdomínios, de acordo com as diretrizes nosame origin policy.

Eu tenho o aplicativo trabalhando com jsonp atualmente, mas acho que as solicitações ajax adequadas devem estar funcionando de acordo com a mesma política de origem que vinculei acima. Prefiro não usar o jsonp se não precisar. Não é possível fazer solicitações regulares de ajax entre subdomínios?

questionAnswers(4)

yourAnswerToTheQuestion