मैं अनुरोध में मूल शीर्षलेख की सामग्री की प्रतिलिपि बनाने के लिए एक एक्सेस-कंट्रोल-अनुमति-उत्पत्ति शीर्षलेख के साथ HTTP विकल्प विधि को प्रतिक्रिया प्रदान करने का प्रयास कर रहा हूं।एक्सेस-कंट्रोल-अनुमति-उत्पत्ति हेडर काम नहीं कर रहा है - मैं गलत क्या कर रहा हूं?
यह स्पष्ट रूप से काम नहीं कर रहा है, कारणों से मैं समझ नहीं पा रहा हूं।
tl; डॉ: विकल्प से प्रतिक्रिया का कहना है:
Access-Control-Allow-Origin: http://10.0.0.105:9294
बाद प्राप्त होते हैं:
Origin:http://10.0.0.105:9294
क्रोम का कहना है:
Origin http://10.0.0.105:9294 is not allowed by Access-Control-Allow-Origin
नहीं WTF?
अधिक विस्तार ...
Chrome की डेवलपर टूल विंडो में देख कर, अनुरोध हेडर हैं:
OPTIONS /user/kris HTTP/1.1
Host: 10.0.0.104:8080
Connection: keep-alive
Access-Control-Request-Method: GET
Origin: http://10.0.0.105:9294
User-Agent: Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.75 Safari/537.1
Access-Control-Request-Headers: origin, x-requested-with, content-type, accept
Accept: */*
Referer: http://10.0.0.105:9294/
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-GB,en-US;q=0.8,en;q=0.6
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
प्रतिक्रिया हेडर हैं:
HTTP/1.0 200 OK
Date: Mon, 13 Aug 2012 11:23:45 GMT
Server: WSGIServer/0.1 Python/2.7.3
Content-Length: 0
Access-Control-Allow-Methods: GET, PUT, POST, DELETE, HEAD, OPTIONS
Access-Control-Max-Age: 10
Access-Control-Allow-Origin: http://10.0.0.105:9294
Access-Control-Allow-Headers: X-Requested-With, Authorization, X-Huzu-User, Content-Type, Accept
Content-Type: text/html; charset=UTF-8
jQuery अपने भेजता है के बाद विकल्प अनुरोध करते हैं और उपर्युक्त प्रतिक्रिया प्राप्त करते हैं, 2 विषम चीजें होती हैं। विकल्प प्रतिक्रिया (जो एक 200 है) एक त्रुटि के रूप में डेवलपर कंसोल में दिखाई देता है: GET अनुरोध
OPTIONS http://10.0.0.104:8080/user/kris 200 (OK)
जो बाद खारिज कर दिया है। कंसोल में त्रुटि:
XMLHttpRequest cannot load http://10.0.0.104:8080/user/kris. Origin http://10.0.0.105:9294 is not allowed by Access-Control-Allow-Origin.
मैं नहीं देख सकता क्यों नहीं। मैं क्या गलत कर रहा हूं?
मेरे पास jQuery कोड का न्यूनतम असफल उदाहरण नहीं है जो यहां पोस्ट करने के लिए उपयोग किया जाएगा। मान लें कि जावास्क्रिप्ट कोड के बारे में कुछ भी अजीब बात नहीं है, यानी यह सिर्फ एक ही jQuery प्राप्त() है, जिसके परिणामस्वरूप ऊपर दिए गए विकल्प अनुरोध हैं। मेरा सवाल है: प्रतिक्रिया में क्या गलत है? – scav
क्या यह सिर्फ मुझे है या होस्ट यूआरएल (10.0.0.104:8080) और रेफरर यूआरएल (10.0.0.105:9294/) के बीच कोई अंतर है? – rene
@rene हाँ। मेरा सर्वर एक पाइथन wsgi ऐप है जो मेरी स्थानीय मशीन (10.0.0.104:8080) पर चल रहा है, और क्रॉस-साइट परीक्षण एक पृष्ठ से हो रहा है जिसे मैं 10.0.0.105:9294 से लोड कर रहा हूं।मुझे नहीं पता कि रेफरर के पास नियंत्रण नियंत्रण पर क्या असर पड़ता है। क्या आपको लगता है कि यह प्रासंगिक है? यदि हां, तो मैं इसके साथ क्या करूँ? – scav