JQuery AJAX Comment puis-je obtenir et analyser JSONP au lieu de JSON?

Résumé
J'ai une application qui s'exécute une recherche. Avant de permettre à présenter, il envoie un appel AJAX pour une requête pour rechercher un code postal valide, puis retourne un résultat JSON qui je peux analyser. J'ai besoin de faire la même chose de la croix-domaine maintenant et je sais que je dois utiliser l'url complète et JSONP format de la place, mais je ne suis pas sûr de savoir comment le configurer.

De l'Appel AJAX

J'ai envoyer un zip code qui est exécuté par le biais d'une requête.

if (zipLength == 5) {
    $.ajax({
        type:"GET", 
        //location of the cfc
        url: "cfc/test.cfc",
        //function name and url variables to send
        data: {method:'zip_lookup', zip:zip},
        //function run on success takes the returned json object and reads values.
        success: function(obj) {
            var response = $.parseJSON(obj);

            if (response.formError == true) {
                alert(response.message);
            }
        }
    });
}

Les CFC dans Coldfusion Qui Exécute La Requête

<!---Makes sure entered zip exists--->   
<cffunction name="zip_lookup" access="remote">
    <cfquery name="qZip">
        Select Distinct ZipCode
        From zipcodes
        Where ZipCode = '#url.zip#'
    </cfquery>

    <!---Return an error if zip was not found--->
    <cfif qZip.RecordCount EQ 0>
        <cfset formError = true>
        <cfset message = "Invalid Zip">
    <cfelse>
        <cfset formError = false>
        <cfset message = "">   
    </cfif>

    <cfoutput>
        <cfset obj = 
            {
                "formError" = formError,
                "message" = message
            } 
        />
    </cfoutput>

    <cfprocessingdirective suppresswhitespace="Yes"> 
        <cfoutput>
            #serializeJSON(obj)#
        </cfoutput>
    </cfprocessingdirective>

    <cfsetting enablecfoutputonly="No" showdebugoutput="No">
</cffunction>

La Réponse JSON

C'est ce que la requête retourne.

{"message":"Invalid Zip","formError":true} 

Traiter Avec La Réponse

Comme je l'ai ci-dessus dans l'AJAX succès fonction, je peux récupérer la formError ou à message variables de la réponse JSON. Comment je peut faire cela avec JSONP?

success: function(obj) {
    var response = $.parseJSON(obj);

    if (response.formError == true) {
        alert(response.message);
    }
}

OriginalL'auteur madvora | 2015-01-14