2015-12-21 7 views
5

पर अपलोड करने का परीक्षण करते समय सीओआरएस त्रुटियां प्राप्त करना मैं एज़ोर स्टोरेज एमुलेटर का उपयोग कर एचटीएमएल 5, एंजुलरजेस एप्लिकेशन के लिए अपलोड कार्यक्षमता का परीक्षण करने की कोशिश कर रहा हूं। किसी कारण से, जब भी मैं स्थानीयहोस्ट के लिए एज़ूर जेनरेट यूआरएल में फाइल भेजता हूं, तो मुझे सीओआरएस त्रुटियां मिलती रहती हैं। अब बादल उदाहरण पर, मैं CORS समर्थन जोड़ने के लिए निम्नलिखित कोड का इस्तेमाल किया है और यह काम करता है:स्टोरेज एमुलेटर

blobServiceProperties.Cors.CorsRules.Add(new CorsRule() 
{ 
    AllowedHeaders = new List<string>() { "*" }, 
    //ExposedHeaders = new List<string>() {"*"}, 
    AllowedMethods = CorsHttpMethods.Post | CorsHttpMethods.Put | CorsHttpMethods.Get | CorsHttpMethods.Delete, 
    AllowedOrigins = new List<string>() { "http://example.com" }, 
    MaxAgeInSeconds = 3600 
}); 

जब मैं एमुलेटर मैं प्राप्त इस संकेत त्रुटियों की अनुमति नहीं है के लिए इस चलाने के लिए प्रयास करें। क्या मुझे एमुलेटर के लिए सीओआरएस भी स्थापित करना है और यदि ऐसा है तो मुझे यह कैसे करना होगा क्योंकि उपरोक्त कोड एम्यूलेटर से काम नहीं करता है?

+0

कब और कहाँ कोड के इस टुकड़े चल रहा है इन दोनों के लिंक की जांच करते हैं? – haim770

+0

WebApiConfig, मेरे पास दो अलग-अलग समाधान हैं, एक वेब पक्ष के लिए और एक वेब एपीआई प्रोजेक्ट के लिए। मुख्य समस्या यह है कि मैं एमुलेटर से परीक्षण करते समय सीओआरएस त्रुटियों को gtting रखना जारी रखता हूं। – user1790300

+0

जब मैं वेब प्रोजेक्ट को केवल एमुलेटर पर प्रकाशित करता हूं तो मैं उन्हें क्लाउड में नहीं ले रहा हूं। – user1790300

उत्तर

0

एक बात मैं स्पष्ट करना चाहता था, MSDN प्रलेखीकरण के अनुसार

"Azure भंडारण सेवाओं का समर्थन पार उत्पत्ति रिसोर्स शेयरिंग (CORS) ब्लॉब, टेबल के लिए, और कतार सेवाओं। फ़ाइल सेवा का समर्थन करता है संस्करण 2015-02-21 के साथ शुरू सीओआरएस। "

और वह

आप सेट कर सकते CORS भंडारण सेवाओं से प्रत्येक के लिए अलग-अलग नियम, सेट ब्लॉब सेवा गुण को फोन करके, सेट फ़ाइल सेवा गुण, सेट पंक्ति सेवा गुण, और सेट टेबल सेवा करने के लिए आगे गुण। एक बार जब आप सेवा के लिए सीओआरएस नियम निर्धारित कर लेंगे, तो किसी भिन्न डोमेन से सेवा के विरुद्ध किए गए एक उचित प्रमाणीकृत अनुरोध का मूल्यांकन यह निर्धारित करने के लिए किया जाएगा कि क्या आपके द्वारा निर्दिष्ट नियमों के अनुसार इसकी अनुमति है या नहीं।

तो मैं उत्सुक हूं कि सेवा एक फ़ाइल सेवा है या सिर्फ एक ब्लॉब सेवा है, तो आपने प्रदान किए गए कोड स्निपेट के अनुसार ब्लॉब सेवा के लिए CORS को सक्षम किया है। लेकिन आपने अपलोड फ़ंक्शन के लिए कोड स्निपेट नहीं रखा है, अगर आप इसे AJAX के माध्यम से कर रहे हैं, तो आपको हेडर प्रकार को ब्लॉब-प्रकार के Azure सेवा में सेट करने की आवश्यकता है, अन्यथा अनुरोधकर्ता अंत में क्रॉस मूल अनुरोध अवरुद्ध हो सकता है यदि यह नहीं हो सकता है सेवा प्रतिक्रिया शीर्षलेख प्रकार के साथ मेल करें।

रूप में अच्छी तरह

Windows Azure Service CORS example

CORS for Azure Storage Service

संबंधित मुद्दे