rest - रिस्पांस शुरुआत में/स्लैश दे रहा है-टॉफी-कोल्ड फ्यूजन



iis coldfusion (1)

मैंने अपना पहला आराम एपीआई सेटअप किया है और मैं टॉफी फ़्रेमवर्क का उपयोग करने के लिए नया हूँ।

मेरे पास एक साइट है जो कोल्ड फ्यूजन 10, आईआईएस और कोल्डबॉक्स का उपयोग कर रहा है। मैं एक निर्देशिका में एक नमस्ते दुनिया उदाहरण सेटअप किया है मुझे जवाब में // दो स्लैश मिल रहा है। यहां प्रतिक्रिया का एक उदाहरण है:

//["hello","world"] 

मेरी हैलो। सीएफसी इस तरह दिखता है:

component extends="taffy.core.resource" taffy_uri="/hello" {

    function get(){
        return representationOf(['hello','world']);
    }

}

मेरे application.cfc इस तरह दिखता है:

<cfcomponent extends="taffy.core.api">
    <cfscript>

        this.name = hash(getCurrentTemplatePath());
        this.mappings["/resources"] = listDeleteAt(cgi.script_name, listLen(cgi.script_name, "/"), "/") & "/resources";

        variables.framework = {};
        variables.framework.reloadKey = "reload";
        variables.framework.reloadPassword = "test";
        variables.framework.serializer = "taffy.core.nativeJsonSerializer";
        variables.framework.returnExceptionsAsJson = true;

        function onApplicationStart(){
            return super.onApplicationStart();
        }

        function onRequestStart(TARGETPATH){
            // reload app to make any envoirnmental changes
            if(structkeyexists(url,'reloadApp')){
                applicationStop();
                location('index.cfm');
            }
            // load Taffy onRequestStart before our stuff
            super.onRequestStart();

            if (request.taffyReloaded) {
                // reload ORM as well
                ORMReload();
            }
        }

        function onTaffyRequest(verb, cfc, requestArguments, mimeExt){
            return true;
        }
        function onError(Exception)
        {
            writeDump(Exception);
            abort;
        }
    </cfscript>
</cfcomponent>

क्या कोई मुझे बता सकता है कि मैं गलत कहां जा रहा हूं? क्या यह कोल्डबॉक्स का उपयोग करने के लिए कुछ करना है?


यह सेटिंग्स के तहत, कोल्डफ्यूजन व्यवस्थापक में एक सर्वर साइड सेटिंग से आ रही है। उपसर्ग के साथ serialized JSON कोल्ड फ्यूजन 10 की शुरुआत से यह सुरक्षा के लिए डिफ़ॉल्ट रूप से सक्षम है। (मेरा मानना ​​है कि सुविधा को कोल्ड फ्यूजन 9 के साथ जोड़ा गया था।) वेब सेवाओं की सुरक्षा करता है, जो एक कस्टम उपसर्ग के साथ सीरियल किए गए JSON स्ट्रिंग्स को प्रीफ़िक्स करके क्रॉस-साइट स्क्रिप्टिंग हमलों से JSON डेटा वापस करता है। आप इसे वहां बंद कर सकते हैं लेकिन मैं इसकी सिफारिश नहीं करता हूं। इसके बजाय आपको इसे अपने कोड से संभाल करना चाहिए।

रेमंड कैम्डेन से इस पोस्ट को देखें - jQuery और jQueryUI में उपसर्गों के साथ JSON हैंडलिंग

नोट: इस सेटिंग को आपके secureJSONPrefix फ़ाइल में secureJSONPrefix secureJSON और secureJSONPrefix secureJSON सेट करके प्रति-एप्लिकेशन भी सेट किया जा सकता है। इसके बारे में दस्तावेज देखें - आवेदन चर

secureJSON - एक बूलियन मान जो निर्दिष्ट करता है कि क्या एक रिमोट कॉल के जवाब में जेएसएएन-प्रारूप में एक कोल्डफ्यूजन फ़ंक्शन लौटाए गए मूल्य के सामने एक सुरक्षा उपसर्ग जोड़ना है या नहीं।

डिफ़ॉल्ट मान प्रशासक सर्वर सेटिंग> सेटिंग्स पृष्ठ में प्रीफ़िक्स क्रमबद्ध JSON सेटिंग का मान है (जो कि चूक के लिए डिफ़ॉल्ट है)। आप cffunction टैग में इस मान को ओवरराइड कर सकते हैं।

secureJSONPrefix - सुरक्षितजएसएन सेटिंग सही होने पर एक रिमोट कॉल के जवाब में जेएसएएन-प्रारूप में एक कोल्डफ्यूजन फ़ंक्शन लौटाए जाने वाले मूल्य के सामने सुरक्षा उपसर्ग डालता है।

डिफ़ॉल्ट मान प्रशासक सर्वर सेटिंग्स> सेटिंग्स पृष्ठ में प्रीफ़िक्स क्रमबद्ध JSON सेटिंग का मान है (जो कि / के लिए डिफ़ॉल्ट, JavaScript टिप्पणी वर्ण)।





taffy