बादलों में स्क्रीनशॉट

छवि
नमस्ते!

हम में से कई लोगों को कभी-कभी अपने स्क्रीनशॉट को साझा करने की आवश्यकता होती है, और ईमेल / स्काइप के माध्यम से स्क्रीनशॉट फ़ाइल भेजने के बजाय, हम तीसरे पक्ष की सेवाओं का उपयोग कर सकते हैं, जिनमें से कई हैं, और वहां फोटो को स्टोर करते हैं।

लेकिन, ayurganov के लिए धन्यवाद, हम http://habrahabr.ru/blogs/soft/132937/ लेख का उपयोग करके अपनी मेजबानी पर एक साधारण Gyazo सेवा स्थापित कर सकते हैं।

मैं और आगे बढ़ा और इस विषय को विकसित किया कि मेरे स्क्रीनशॉट्स को RackSpace CloudFiles - RackSpace से CDN पर संग्रहित किया गया है, जो बिना किसी समस्या के किसी भी "हब्फेफेक्ट" का सामना कर सकता है। और फाइलों के लिंक Bit.ly के माध्यम से अच्छी तरह से छोटा है।


इस स्क्रिप्ट का उपयोग करने के लिए आपके पास आवश्यक है:
  1. एक RackSpace कंटेनर बनाएँ और इसे CDN पर फ़ाइलें साझा करने दें:
    छवि
  2. रैकस्पेस खाते की सेटिंग में हम अपनी एपीआई कुंजी पाते हैं।
  3. सेटिंग्स में थोड़ा सा खाते में, एपीआई के उपयोग को सक्षम करें और उसी स्थान पर उपयोगकर्ता नाम और पासवर्ड ढूंढें।
  4. होस्ट को रिपॉजिटरी की सामग्री की प्रतिलिपि बनाएँ
  5. Http://habrahabr.ru/blogs/soft/132937/ लेख के अनुसार हम क्लाइंट को कॉन्फ़िगर करते हैं।

मुख्य आवेदन कोड इस प्रकार है:
<?php require('files/cloudfiles.php'); //Bitly credentials $bitly_name='##Bitly_name'; $bitly_key='##Bitly_key'; $gyazo_url = $_SERVER['SERVER_NAME']; $company_name='my_company'; //Rackspace Credentials $username='##Rackspace_UN'; $key='##Rackspace_key'; $container='##Rackspace_container'; /* returns the shortened url */ function get_bitly_short_url($url,$login,$appkey,$format='txt') { $connectURL = 'http://api.bit.ly/v3/shorten/?login='.$login.'&apiKey='.$appkey.'&uri='.urlencode($url).'&format='.$format; return curl_get_result($connectURL); } /* returns a result form url */ function curl_get_result($url) { $ch = curl_init(); $timeout = 5; curl_setopt($ch,CURLOPT_URL,$url); curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout); $data = curl_exec($ch); curl_close($ch); return $data; } //When file is uploaded if(isset($_FILES['imagedata']['name'])) { $name = substr(md5(time()), -28).'.'.$company_name.'.png'; //Store it on Rackspace if ($tempname = $_FILES['imagedata']['tmp_name']){ $auth = new CF_Authentication($username, $key); $auth->authenticate(); $conn = new CF_Connection($auth); $container = $conn->create_container($container); $object = $container->create_object($name); $object->load_from_filename($tempname); $fileuri = $container->make_public(); $imageu = $object->public_uri(); //Output file url echo $gyazo_url."?limage=$imageu"; } }else { $limage=$_GET['limage']; $shorten = get_bitly_short_url($limage,$bitly_name,$bitly_key); echo "<head> <link rel='shortcut icon' href=$limage> </head> <style type='text/css'> #url1, #url2 { width:150px; } #url2 { } .copy { display:inline-block; height:16px; width:16px; background:url(files/copy.png); position:relative; top:3px; } .copy:hover { opacity:0.5; cursor:pointer; } .copied { display:inline-block; height:16px; width:16px; background:url(files/copied.png); position:relative; top:3px; margin-left:5px; } .wrap { display:block; width:300px; } </style> <script src='https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js'></script> <script src='files/jquery.zclip.min.js'></script> <script type='text/javascript'> $(document).ready(function(){ $('#copy1').zclip({ path:'files/ZeroClipboard.swf', copy:$('#url1').val(), afterCopy:function(){ $(this).after('<span class=copied></span>'); $(this).next('.copied').fadeOut('slow'); }, }); $('#copy2').zclip({ path:'files/ZeroClipboard.swf', copy:$('#url2').val(), afterCopy:function(){ $(this).after('<span class=copied></span>'); $(this).next('.copied').fadeOut('slow'); }, }); $('#url1, #url2').click(function(){ $(this).select(); }); }); </script> <span class='wrap'><input id='url1' type='text' value=$shorten> <span class='copy' id='copy1'></span></span> <hr /> <img src=$limage>"; } ?> 


ब्राउज़र में, स्क्रीनशॉट इस तरह दिखाई देगा:
छवि

और लिंक के पास बटन पर क्लिक करने पर, फ्लैश ड्राइव क्लिपबोर्ड पर कॉपी हो जाएगी। इसके अलावा, इस लिंक को किसी भी व्यक्ति को आसानी से स्थानांतरित किया जा सकता है, जिसे हब या जीरा में डाला गया है।

सब सब में, बहुत आरामदायक! मैं इसे सुझाता हूं!

पुनश्च। मेरे qblx.co शॉर्टनर द्वारा चिंतित न हों - यह एक ही बिट है। केवल एक व्यक्तिगत डोमेन के साथ।

अद्यतन: अमेज़न S3 के लिए Gyazo सर्वर यहाँ है: Github.com

Source: https://habr.com/ru/post/In138858/


All Articles