2011-10-08 16 views
6

मेरे पास एक वेबसाइट और मेरा REST एपीआई सर्वर है।असुरक्षित शीर्षलेख पाने के लिए मना कर दिया गया "स्थान"

मैं नया मॉडल बनाने के लिए आरईएसटी सर्वर पर AJAX पोस्ट अनुरोध करता हूं। इस अनुरोध के लिए उत्तर "HTTP/1.1 201 बनाया गया" हेडर के साथ प्रतिक्रिया "स्थान: http://myapi.com/some/path/111" लेकिन मुझे त्रुटि संदेश Refused to get unsafe header "Location" मिलता है। मुझे पता है कि यह क्रॉस डोमेन एक्सेस पॉलिसी और अन्य ब्लै ब्लै ब्लै के कारण है।

क्या कोई जानता है कि इसे कैसे ठीक किया जाए? हो सकता है कि मुझे प्रतिक्रिया के लिए "एक्सेस-कंट्रोल-स्वीट-कुछ-कुछ" शीर्षलेख जोड़ना होगा?

युपीडी:

वेब साइट यूआरएल http://www.mydomain.com/

मूल यूआरआई http://api.mydomain.com/model/ है और नए स्थान यूआरआई http://api.mydomain.com/model/211

मूल यूआरआई ajax पोस्ट अनुरोध है, जो के साथ नए स्थान हैडर प्रतिक्रिया के लिए प्रयोग किया जाता है।

+0

मूल URL क्या है और नया स्थान URL क्या है? –

उत्तर

1

मैं बस कॉल के मूल्य के रूप में नया स्थान लौटकर या क्लाइंट कोड रखने के बारे में जानता हूं कि नव निर्मित आइटम कहां संग्रहीत किया गया है।

एक और विकल्प मूल डोमेन पर कॉल के लिए प्रॉक्सी बनाना है।

0
header Location: http://myapi.com/some/path/111" 

कोड का वह टुकड़ा पूरी तरह से गलत है। इसे सही, या लगभग corret का प्रयोग करें।

इस प्रयास करें:

header("Location: http://myapi.com/some/path/111"); 

या

header("Location: http://myapi.com/some/path/111"); exit(); 

अगर यह काम नहीं, (मुझे क्योंकि स्थान हैडर ग्राहक बुला के संपर्क में नहीं है पता है :-)

+1

धन्यवाद स्टियन, लेकिन मुझे पता है कि PHP के साथ स्थान शीर्षलेख कैसे जोड़ना है। समस्या क्रॉस डोमेन नीति या इस तरह कुछ है। मुझे नई यूआरआई द्वारा जाने के बजाय, ब्राउज़र कंसोल में "असुरक्षित शीर्षलेख पाने के लिए मना कर दिया गया" त्रुटि प्राप्त हुई। –

4

यह जाने इस में डिफ़ॉल्ट रूप से अपना AJAX कोड) (यह 'असुरक्षित' है)। यह बेनकाब करने के लिए आप अतिरिक्त हैडर वापस लौटाना होगा:

Access-Control-Expose-Headers: Location 

इस तरह ब्राउज़र यह सामने आ जाएगी, तो ग्राहक उसे पढ़ सकें। आप वहां अल्पविराम से अलग हेडर गुणा कर सकते हैं। इसके बारे में hereHere आप कौन सी विधियों को पढ़ सकते हैं, शीर्षलेख & सामग्री प्रकार सुरक्षित (सरल) हैं और किसी भी अतिरिक्त कॉन्फ़िगरेशन की आवश्यकता नहीं है।

0

अमेज़ॅन एस 3 अपलोड के लिए (उदाहरण के लिए ड्रॉपज़ोन के माध्यम से) आपको इसे अपने सीओआरएस कॉन्फ़िगरेशन में चाहिए।

<ExposeHeader>location</ExposeHeader> 
संबंधित मुद्दे