असल में मेरी एक परियोजना में मुझे दूरस्थ सर्वर से छवियों को पढ़ने और स्थानीय डेटाबेस में स्टोर को बाद में एप्लिकेशन में उपयोग करने के लिए बाइनरी के रूप में पढ़ने की आवश्यकता है। तो क्या कोई आसान तरीका है कि मैं यह कर सकता हूं? यह केवल एक चीज है जिसमें मैं फंस गया और आवेदन पूरा करना महत्वपूर्ण है। कृपया सहायता कीजिए !! अग्रिम में धन्यवाद।जावास्क्रिप्ट या फोनगैप का उपयोग कर बाइनरी मोड में दूरस्थ सर्वर से छवि को पढ़ने के लिए संभव है?
उत्तर
यह एचटीएमएल 5/ईएस 5 पर्यावरण (व्यावहारिक रूप से इंटरनेट एक्सप्लोरर 9-) को छोड़कर सब कुछ सरल है;
सबसे पहले आपको छवि की बाइनरी सामग्री को सरणीबफर में डाउनलोड करने की आवश्यकता है, फिर इसे बेस 64 डेटाौरी में परिवर्तित करें, जो वास्तव में एक स्ट्रिंग है। इसे ब्राउज़रों में स्थानीय स्टोरेज, इंडेक्सड डीबी या वेबएसक्यूएल, या यहां तक कि एक कुकी (हालांकि बहुत कुशल नहीं है) में संग्रहीत किया जा सकता है; बाद में आप इस डेटाौरी को प्रदर्शित करने के लिए छवि स्रोत के रूप में सेट करें।
<script>
function showImage(imgAddress) {
var img = document.createElement("img");
document.body.appendChild(img);
getImageAsBase64(imgAddress, function (base64data) { img.src = base64data; });
};
function getImageAsBase64(imgAddress, onready) {
//get from online or from whatever string store
var req = new XMLHttpRequest();
req.open("GET", imgAddress, true);
req.responseType = 'arraybuffer'; //this won't work with sync requests in FF
req.onload = function() { onready(arrayBufferToDataUri(req.response)); };
req.send(null);
};
function arrayBufferToDataUri(arrayBuffer) {
var base64 = '',
encodings = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz/',
bytes = new Uint8Array(arrayBuffer), byteLength = bytes.byteLength,
byteRemainder = byteLength % 3, mainLength = byteLength - byteRemainder,
a, b, c, d, chunk;
for (var i = 0; i < mainLength; i = i + 3) {
chunk = (bytes[i] << 16) | (bytes[i + 1] << 8) | bytes[i + 2];
a = (chunk & 16515072) >> 18; b = (chunk & 258048) >> 12;
c = (chunk & 4032) >> 6; d = chunk & 63;
base64 += encodings[a] + encodings[b] + encodings[c] + encodings[d];
}
if (byteRemainder == 1) {
chunk = bytes[mainLength];
a = (chunk & 252) >> 2;
b = (chunk & 3) << 4;
base64 += encodings[a] + encodings[b] + '==';
} else if (byteRemainder == 2) {
chunk = (bytes[mainLength] << 8) | bytes[mainLength + 1];
a = (chunk & 16128) >> 8;
b = (chunk & 1008) >> 4;
c = (chunk & 15) << 2;
base64 += encodings[a] + encodings[b] + encodings[c] + '=';
}
return "data:image/jpeg;base64," + base64;
}
</script>
मैं इस पद से ठीक बेस 64 रूपांतरण दिनचर्या उधार: http://jsperf.com/encoding-xhr-image-data/5
क्या इससे मदद मिली? उत्तर के रूप में चिह्नित करें या अधिक जानकारी प्रदान करें। –
सुझाव के लिए धन्यवाद। आपका कोड पूरी तरह से काम करता है। मैंने इसे फ़ायरफ़ॉक्स के लिए iMacros में उपयोग के लिए मॉड्यूल में लपेट लिया [https://github.com/nisaacson/download-file-base64 ](https://github.com/nisaacson/download-file-base64) – Noah
- 1. + पढ़ने + जोड़ने के लिए फ़ाइल मोड + बाइनरी
- 2. जावास्क्रिप्ट को वेबकिट कर सकते हैं या एक छवि पोस्ट कर सकते हैं पुन: शैली शुद्ध बाइनरी के रूप में?
- 3. जावास्क्रिप्ट में बाइनरी डेटा पढ़ने का कोई तरीका है?
- 4. जावास्क्रिप्ट का उपयोग कर एसएसएच से कनेक्ट करना संभव है?
- 5. केवल पढ़ने के लिए मोड
- 6. छवि प्रसंस्करण कार्यों का उपयोग करने के लिए एक मैट्रिक्स या बाइनरी छवि में बहुभुज को कैसे स्केच करना है?
- 7. क्या केवल लॉक स्क्लाइट डेटाबेस को पढ़ने के लिए मोड में खोलना संभव है?
- 8. दूरस्थ डेस्कटॉप के लिए एकता मोड
- 9. दूरस्थ सर्वर से net.tcp endpoint का उपयोग कर डब्ल्यूसीएफ सेवा की स्थिति को पिंग या जांचने के लिए कैसे करें?
- 10. क्या मैं दूरस्थ सर्वर को अद्यतित रखने के लिए गिट का उपयोग कर सकता हूं?
- 11. सर्वर मोड में Ghostscript का उपयोग PNG का करने के लिए पीडीएफ़ कन्वर्ट करने के लिए
- 12. छवि को फसल करने के लिए जावास्क्रिप्ट का उपयोग करें
- 13. जावास्क्रिप्ट या jQuery का उपयोग कर 301 रीडायरेक्ट संभव हैं?
- 14. बाइनरी फ़ाइल को छवि
- 15. पढ़ने और लिखने json फ़ाइल जावास्क्रिप्ट का उपयोग कर
- 16. सीएसएस या जावास्क्रिप्ट का उपयोग कर वेब पृष्ठों में फ़ोटोशॉप-एस्क्यू मिश्रण मोड?
- 17. जावास्क्रिप्ट का उपयोग कर सीधे ब्राउज़र में Sqlite3 पढ़ने का सबसे अच्छा तरीका क्या है?
- 18. एक त्रुटि के साथ ftpWebRequest का उपयोग कर: दूरस्थ सर्वर से त्रुटि आई 530 में
- 19. स्थानीय स्टोरेज फोनगैप में छवि सहेजें
- 20. HIbernate InvalidDataAccessApiUsageException - केवल-पढ़ने के लिए मोड
- 21. क्या js2-mode का उपयोग जावास्क्रिप्ट मोड के रूप में nxhtml के साथ करना संभव है?
- 22. टेक्स्ट सामग्री को पढ़ने के लिए फ़ंक्शन ऑब्जेक्ट पर toString का उपयोग कर जावास्क्रिप्ट
- 23. बाइनरी मोड
- 24. फोनगैप/वेबवर्क्स का उपयोग कर ब्लैकबेरी में बहुत सारे धागे
- 25. क्या एम्बेडेड मोड में ओकैमल का उपयोग करना संभव है?
- 26. बारकोड पढ़ने के लिए जावास्क्रिप्ट प्लगइन
- 27. फोनगैप का उपयोग कर सर्वर के साथ संवाद करने का सबसे अच्छा तरीका क्या है?
- 28. स्ट्रिंग में बाइनरी फ़ाइल पढ़ने के लिए किस PHP फ़ंक्शन का उपयोग करना है?
- 29. क्या सक्रिय सर्वर का उपयोग कर एक हेरोकू सर्वर से क्रेडिट कार्ड भुगतान करना संभव है?
- 30. फोनगैप - एक दूरस्थ वेबसाइट के खिलाफ प्रमाणित करने के दृष्टिकोण?
के संभावित डुप्लिकेट (http://stackoverflow.com/questions/2801042/ [div में छवियों कि डाटाबेस में संग्रहित दिखाने के लिए कैसे] कैसे-टू-शो-इमेज-इन-डिव-द-स्टोरेज-इन-डीबी) –
@ डिओडियस नोप, यह एक जावास्क्रिप्ट प्रश्न है और यह जावा के लिए है। –
@ शैलेश धन्यवाद क्या आप इसे उत्तर के रूप में स्वीकार कर सकते हैं? –