पर एक छवि को पुनर्प्राप्त करने के लिए कैसे मैं इलेक्ट्रॉन का उपयोग कर डेस्कटॉप ऐप बना रहा हूं, जो मूल रूप से जावास्क्रिप्ट है।किसी डेस्कटॉप ऐप से एक रेल एपीआई
इसे में, मैं इस तरह मेरे रेल एपीआई के लिए एक छवि भेज रहा:
var myHeaders = new Headers();
myHeaders.append('Authorization', 'Token token=redacted');
myHeaders.append('Content-Type', 'application/json');
myHeaders.append('Accept', 'application/json');
...
var formData = new FormData();
formData.append("img", base64EncodedImage);
var myPost = {method: 'POST', headers: myHeaders, body: formData}
fetch("url", myPost)
(सरलीकृत)
मेरी रेल कंसोल में, मैं देख रहा हूँ:
{"REMOTE_ADDR"=>"127.0.0.1", "REQUEST_METHOD"=>"POST", "REQUEST_PATH"=>"/task/screenshot", "PATH_INFO"=>"/task/screenshot", "REQUEST_URI"=>"/task/screenshot", "SERVER_PROTOCOL"=>"HTTP/1.1", "HTTP_VERSION"=>"HTTP/1.1", "HTTP_HOST"=>"localhost:3000", "HTTP_CONNECTION"=>"keep-alive", "CONTENT_LENGTH"=>"454856", "HTTP_ACCEPT"=>"application/json", "HTTP_ORIGIN"=>"null", "HTTP_USER_AGENT"=>"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/537.36 (KHTML, like Gecko) testivate-research-gigs/1.0.0 Chrome/49.0.2623.75 Electron/0.37.5 Safari/537.36", "HTTP_AUTHORIZATION"=>"Token token=redacted", "CONTENT_TYPE"=>"application/json", "HTTP_ACCEPT_ENCODING"=>"gzip, deflate", "HTTP_ACCEPT_LANGUAGE"=>"en-US", "rack.url_scheme"=>"http", "SERVER_NAME"=>"localhost", "SERVER_PORT"=>"3000", "QUERY_STRING"=>"", "rack.tempfiles"=>[#<Unicorn::TmpIO:/var/folders/k9/vnpft_6d7qs6xmdb9_4svvmw0000gn/T/0.19309304750270062>], "rack.input"=>#<Rack::Lint::InputWrapper:0x007fe1de317000 @input=#<Unicorn::TeeInput:0x007fe1de31d950 @len=454856, @chunked=false, @socket=#<Kgio::Socket:fd 7>, @parser=#<Unicorn::HttpParser:0x007fe1db08ce00>, @buf="", @rbuf="------WebKitFormBoundaryxkkhvE17qoI5ozlK\r\nContent-Disposition: form-data; name=\"img\"\r\n\r\ndata:image/jpeg;base64,iVBORw0KGgoAAAANSUhEU...
लेकिन मैं छवि पर नहीं जा सकता।
> request.body.read
> request.body.rewind
> request.body.read
> request.env
है कि, मैं आदेशों की सबसे करने के लिए खाली प्रतिक्रियाएं प्राप्त करते हैं, और फिर यह सिर्फ अनिश्चित काल के बाद मैं request.env
टाइप करें, वहाँ लटका हुआ है की ओर लौटने के बिना: यह जब मैं जिज्ञासा का उपयोग कर नियंत्रक में छोड़ मैं क्या देख रहा है शीघ्र।
मैं छवि पर कैसे पहुंचूं?
धन्यवाद।
बीटीडब्लू, अन्य क्रियाएं जो POST प्राप्त कर रही हैं लेकिन एम्बेडेड छवियों के साथ पूरी तरह से काम नहीं कर रही हैं। इससे पहले, जब मैं XMLHttpRequest()
fetch()
का उपयोग नहीं कर रहा था, तो यह क्रिया पूरी तरह से काम कर रही थी, लेकिन मुझे अपने Google क्रोम एक्सटेंशन को इलेक्ट्रॉन ऐप में बदलने के लिए स्विच करना पड़ा।
अद्यतन
मैं सीधे S3 के बजाय S3-रेल के माध्यम से करने के लिए अपनी छवियों को अपलोड करने से खुद के लिए इस समस्या का समाधान। यह न केवल काम करता है बल्कि ऐप के माध्यम से जाने से तेज़ है, जिसे अब मुझे केवल यह कहना है कि छवि को कहां देखना है। लेकिन मेरे मूल मुद्दे को संबोधित नहीं किया गया था, इसलिए मैं इस सवाल को छोड़ रहा हूं और बक्षीस खुला हूं। शायद कोई इसे हल करेगा, बक्षीस का दावा करेगा, और एक उत्तर लिख देगा कि किसी और को ट्रैक के नीचे उपयोगी लगेगा।
रेल में एक छवि को संग्रहीत करने, किसी भी मणि का उपयोग करने के लिए? – 7urkm3n
छवि अपलोड http: // stackoverflow के लिए पेपरक्लिप मणि का उपयोग करें।कॉम/प्रश्न/35765578/रेल-एपीआई-पेपरक्लिप-अपलोडिंग-इमेज-कनवर्टिंग-टू-बेस -64-एंड-सेविंग-इट-एंड/35766241 # 35766241 –
ऐसा लगता है जैसे आपने पैरामीटर फ़िल्टर किया है। – joewoodward