दिलचस्प पोस्ट
आप ggplot2 में पहलुओं पर एक सामान्य लेबल कैसे जोड़ सकते हैं? एक पाठ क्षेत्र में उपयोग के लिए <br /> को एक नई पंक्ति में परिवर्तित करना एसक्यूएल / माय एसक्यूएल में, "चालू" और "WHERE" के बीच में अंतर क्या शामिल है? एक मिश्रित डेटा प्रकार (int, float, char, आदि) एक सरणी में कैसे संग्रहीत किया जा सकता है? निर्माण विफल रहा: एलडी: डुप्लिकेट प्रतीक _OBJC_CLASS _ $ _ बीजगणित 5 प्रथमदर्शिका नियंत्रक जब कोई उपयोगकर्ता एक नया उदाहरण खोलने का प्रयास करता है, तो पहले से ही खुला एप्लिकेशन पर वापस लौटें पायथन में बैश कमांड चलाना मैं हाइपरलिंक छवियों के आसपास की रूपरेखा कैसे निकाल सकता हूं? किसी क्वेरी परिणाम के परिणामों का यादृच्छिक नमूना चुनें Asp.net वेब साइट या asp.net वेब अनुप्रयोग? एक प्रोग्राम को स्टार्टअप करने के लिए रजिस्ट्री का उपयोग करें, और मौजूदा कार्यशील निर्देशिका भी बदलें? कई बिल्ड कॉन्फ़िगरेशन के लिए अलग ऐप। कॉन्फ़िग कैसे चुनना है Django में AJAX के माध्यम से पोस्ट पैरामीटर, जबकि "CSRF टोकन अनुपलब्ध या गलत" कैसे WinForms में DataGridView सेल मर्ज करने के लिए ओवरलोडेड सदस्य फ़ंक्शन पॉइंटर को टेम्पलेट पैरामीटर के रूप में पारित किया जा रहा है

XMLHttpRequest उत्पत्ति रिक्त की अनुमति नहीं है एक्सेस-कंट्रोल-अनुमति-फ़ाइल के लिए उत्पत्ति: /// फाइल करने के लिए: /// (सर्वरहीन)

मैं एक ऐसी वेबसाइट बनाने की कोशिश कर रहा हूं जो डाउनलोड किया जा सकता है और उसकी इंडेक्स फाइल लॉन्च करके स्थानीय रूप से चला सकता है।

सभी फाइलें स्थानीय हैं, कोई भी संसाधन ऑनलाइन नहीं हैं

जब मैं एक एक्सएसएल टेम्पलेट (उप निर्देशिका में) के साथ XML फ़ाइल को संसाधित करने के लिए jQuery के लिए AJAXSLT प्लगइन का उपयोग करने की कोशिश करता हूं, तो मुझे निम्न त्रुटियां प्राप्त होती हैं:

XMLHttpRequest cannot load file:///C:/path/to/XSL%20Website/data/home.xml. Origin null is not allowed by Access-Control-Allow-Origin.

XMLHttpRequest cannot load file:///C:/path/to/XSL%20Website/assets/xsl/main.xsl. Origin null is not allowed by Access-Control-Allow-Origin.

अनुरोध करने वाली सूचकांक फ़ाइल है file:///C:/path/to/XSL%20Website/index.html जबकि उपयोग की जाने वाली जावास्क्रिप्ट फाइलें फाइल में संग्रहीत हैं file:///C:/path/to/XSL%20Website/assets/js/

मैं इस मुद्दे को ठीक करने के लिए कैसे कर सकता हूं?

Solutions Collecting From Web of "XMLHttpRequest उत्पत्ति रिक्त की अनुमति नहीं है एक्सेस-कंट्रोल-अनुमति-फ़ाइल के लिए उत्पत्ति: /// फाइल करने के लिए: /// (सर्वरहीन)"

ऐसे उदाहरणों के लिए जहां एक लोकल वेबसर्वर चलाना कोई विकल्प नहीं है, आप क्रोम को ब्राउजर स्विच के जरिए file:// फाइलों तक पहुंच की अनुमति दे सकते हैं। कुछ खुदाई के बाद, मुझे यह चर्चा मिली, जिसमें पोस्ट खोलने में एक ब्राउज़र स्विच का उल्लेख किया गया था। अपने क्रोम इंस्टेंस को इनके साथ चलाएं:

 chrome.exe --allow-file-access-from-files 

यह विकास के वातावरण के लिए स्वीकार्य हो सकता है, लेकिन कुछ और आप निश्चित रूप से यह सब समय पर नहीं चाहते हैं यह अभी भी एक खुला मुद्दा (जनवरी 2011 तक) प्रतीत होता है।

इन्हें भी देखें: क्रोम में स्थानीय फाइलों का उपयोग करते हुए jQuery getJSON के साथ समस्याएं

इसके साथ निपटने का एकमात्र तरीका है कि स्थानीय वेब पर चलने वाले एक वेबसर्वर और वहां से उन्हें सेवा प्रदान करना है।

ब्राउज़र के लिए यह असुरक्षित है कि आपके कंप्यूटर पर किसी फ़ाइल को एक्सेस करने के लिए एक एजेक्स अनुरोध की अनुमति दी जाए, इसलिए अधिकांश ब्राउज़रों "फ़ाइल: //" अनुरोधों का इलाज करते हैं, जैसा कि " समान उत्पत्ति नीति "

एक वेबसर्वर को शुरू करना cd आईएनजी के रूप में तुच्छ हो सकता है जिसमें फाइलें चल रही हैं और चल रही हैं:

 python -m SimpleHTTPServer 

यहां एक applescript है जो Chrome को लॉन्च-फाइल-एक्सेस-इन-फाईली स्विच चालू करने के साथ लॉन्च करेगा, क्योंकि ओएसएक्स / क्रोम के लिए वहां मौजूद है:

 set chromePath to POSIX path of "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" set switch to " --allow-file-access-from-files" do shell script (quoted form of chromePath) & switch & " > /dev/null 2>&1 &" 

यह समाधान आपको jQuery.getScript () का उपयोग करके एक स्थानीय स्क्रिप्ट को लोड करने की अनुमति देगा। यह एक वैश्विक सेटिंग है, लेकिन आप प्रति-अनुरोध के आधार पर क्रॉसडोमेन विकल्प भी सेट कर सकते हैं।

 $.ajaxPrefilter( "json script", function( options ) { options.crossDomain = true; }); 

स्थानीय फ़ाइल को खोलने के लिए जावास्क्रिप्ट फ़ेडर रीडर फ़ंक्शन का उपयोग करने के बारे में, यानी:

 <input type="file" name="filename" id="filename"> <script> $("#filename").change(function (e) { if (e.target.files != undefined) { var reader = new FileReader(); reader.onload = function (e) { // Get all the contents in the file var data = e.target.result; // other stuffss................ }; reader.readAsText(e.target.files.item(0)); } }); </script> 

अब Choose file बटन Choose file क्लिक करें और फ़ाइल file:///C:/path/to/XSL%20Website/data/home.xml ब्राउज़ करें file:///C:/path/to/XSL%20Website/data/home.xml

इस प्रतिबंध को बाईपास करने के लिए क्रोम को लॉन्च करें: open -a "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" --args --allow-file-access-from-files

जोश ली की टिप्पणी से प्राप्त किया गया लेकिन मुझे Google Chrome का पूर्ण पथ निर्दिष्ट करने की आवश्यकता है ताकि मेरे विंडोज़ विभाजन (समानताएं) में Google Chrome खोलने से बचने के लिए।

आप 'Access-Control-Allow-Origin':'*' डालने 'Access-Control-Allow-Origin':'*' प्रयास कर सकते हैं 'Access-Control-Allow-Origin':'*' response.writeHead(, {[here]}) में। response.writeHead(, {[here]})

जिस तरह से मैं इसके आस-पास काम करता था, वह XMLHTTPRequest बिल्कुल भी नहीं है, बल्कि इसके बजाय एक अलग जावास्क्रिप्ट फ़ाइल में आवश्यक डेटा शामिल करें। (मेरे मामले में मुझे https://github.com/kripken/sql.js/ के साथ उपयोग करने के लिए एक बाइनरी SQLite ब्लॉब की आवश्यकता थी)

मैंने base64_data.js नामक एक फ़ाइल बनाई है (और उस डेटा को परिवर्तित करने के लिए btoa() का उपयोग किया है और इसे <div> में सम्मिलित करें ताकि मैं इसे कॉपी कर btoa() )।

 var base64_data = "U1FMaXRlIGZvcm1hdCAzAAQA ...<snip lots of data> AhEHwA=="; 

और फिर सामान्य जावास्क्रिप्ट जैसे html में डेटा शामिल किया गया था:

 <div id="test"></div> <script src="base64_data.js"></script> <script> data = atob(base64_data); var sqldb = new SQL.Database(data); // Database test code from the sql.js project var test = sqldb.exec("SELECT * FROM Genre"); document.getElementById("test").textContent = JSON.stringify(test); </script> 

मुझे लगता है कि यह JSON को पढ़ने के लिए संशोधित करने के लिए, शायद एक्सएमएल को भी छोटा होगा; मैं इसे रीडर के लिए एक अभ्यास के रूप में छोड़ दूँगा;)