2012-10-25 22 views
5

अगर मैं create a dynamic bitmap जावास्क्रिप्ट के माध्यम से clientside पर, कैसे मैं इस पोस्ट के माध्यम से जमा करें या प्राप्त कर सकते हैं (और फिर serverside पर बिटमैप से मूल्यों को पार्स आउट? NodeJS, पीएचपी आदि)कैसे आप पोस्ट के माध्यम से एक जावास्क्रिप्ट उत्पन्न बिटमैप छवि प्रस्तुत करूँ?

Making Images Byte-by-Byte in Javascript

var src = 'data:image/bmp;base64,' + myBase64EncodedData;

से
+0

क्यों सर्वर पर मूल्य पोस्ट करने के लिए AJAX का उपयोग नहीं करें और आप जिस भी भाषा का उपयोग करते हैं, 'request.params [' image ']' के साथ सर्वर पक्ष से पुनर्प्राप्त करें? –

उत्तर

1

आप इस तरह पद का उपयोग कर सकते ..

एचटीएमएल

<img src="whatever.jpg" id="myimage" /> 
<div id="button" data-role="button">Click on button</div> 

जे एस

$(function() { 
     $("#button").click(function() { 
       postImageData(); 
      }); 
    }); 

      function postImageData(){ 
var img = document.getElementById('myimage') 
var myBase64EncodedData = getBase64Image(img); 
       $.ajax({ 
        type: 'POST', 
        url: 'http://same_domain_url.com/', 
        data: { 
         'imagedata': myBase64EncodedData 
          }, 
        success: function(msg){ 
         console.log('posted' + msg); 
        } 
       }); 
      } 

php

$imagedata=$_POST['imagedata']; 

getBase64Image समारोह इस का उल्लेख के लिए बहुतसवालGet image data in JavaScript?

+1

उस सवाल भी करने के लिए संदर्भ के लिए धन्यवाद! – qodeninja

3

बस आधार 64 डेटा अपलोड करें। इसे किसी भी तरह से सर्वर पक्ष के रूप में पार्स करें।

HTML:

<form id="uploadImage" method="POST"> 
    <input type="hidden" name="imageData64" id="imageData64"/> 
    <input type="submit" value="upload"/> 
<form> 

जे एस:

document.getElementById('uploadImage').onsubmit = function() { 
    document.getElementById('imageData64').value = myBase64EncodedData; 
}; 

या आप एक ajax अनुरोध के साथ भी ऐसा ही हो सकता है।

आप शायद हालांकि प्राप्त उपयोग करने के लिए नहीं करना चाहती। आंशिक रूप से क्योंकि यह उचित नहीं है, आप सर्वर के रूप में कुछ भी पुनर्प्राप्त नहीं कर रहे हैं। लेकिन अधिक क्योंकि जीईटी यूआरएल लंबाई पर कुछ सीमाएं डालता है, इसलिए आपका छवि डेटा फिट नहीं हो सकता है। पोस्ट के पास ऐसी कोई सीमा नहीं है क्योंकि अनुरोध के पास शरीर हो सकता है, जीईटी के विपरीत।