"url shotener"
Bootstrap 3.0.0 Snippet by evarevirus

<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet" id="bootstrap-css"> <script src="//netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script> <script src="//code.jquery.com/jquery-1.11.1.min.js"></script> <!------ Include the above in your HEAD tag ----------> <!DOCTYPE html><html lang='en' class=''> <head><script src='//production-assets.codepen.io/assets/editor/live/console_runner-079c09a0e3b9ff743e39ee2d5637b9216b3545af0de366d4b9aad9dc87e26bfd.js'></script><script src='//production-assets.codepen.io/assets/editor/live/events_runner-73716630c22bbc8cff4bd0f07b135f00a0bdc5d14629260c3ec49e5606f98fdd.js'></script><script src='//production-assets.codepen.io/assets/editor/live/css_live_reload_init-2c0dc5167d60a5af3ee189d570b1835129687ea2a61bee3513dee3a50c115a77.js'></script><meta charset='UTF-8'><meta name="robots" content="noindex"><link rel="shortcut icon" type="image/x-icon" href="//production-assets.codepen.io/assets/favicon/favicon-8ea04875e70c4b0bb41da869e81236e54394d63638a1ef12fa558a4a835f1164.ico" /><link rel="mask-icon" type="" href="//production-assets.codepen.io/assets/favicon/logo-pin-f2d2b6d2c61838f7e76325261b7195c27224080bc099486ddd6dccb469b8e8e6.svg" color="#111" /><link rel="canonical" href="https://codepen.io/dbrewitz/pen/WZmKLL?depth=everything&order=popularity&page=20&q=shortener&show_forks=false" /> <style class="cp-pen-styles"> #urlExpander { background-color: #0087de; height: 500px; text-align: center; width: 410px; margin: 0 auto; } h1 { height: 38px; font-family: Roboto; font-size: 32px; font-weight: 300; letter-spacing: 0.6px; text-align: center; color: white; background: gray; padding-top: 10px; } .logo { width: 300px; margin-top: 10px; object-fit: contain; } .container { width: 400px; margin: auto; text-align: center; } #input { width: 219px; height: 37px; border-radius: 3.2px; border: solid 0.8px #1f233e; background-color: white; display: block; margin: auto; font-family: Source Sans Pro; font-size: 14px; letter-spacing: 0.2px; text-align: center; color: #111; } #shorten { width: 91px; height: 37px; border-radius: 3.2px; border: solid 0.8px #1f233e; background-color: inherit; margin-top: 48px; font-family: Source Sans Pro; font-size: 14px; letter-spacing: 0.2px; text-align: center; color: #ffffff; margin-right: -3px; } #expand { width: 91px; height: 37px; border-radius: 3.2px; background-color: #1f233e; border: solid 0.8px #4a4a4a; margin-top: 48px; font-family: Source Sans Pro; font-size: 14px; letter-spacing: 0.2px; text-align: center; color: #ffffff; margin-left: -3px; } #responseField { min-width: 191px; min-height: 120px; border: solid 2px #ffffff; margin: auto; margin-top: 25px; font-family: Source Sans Pro; font-size: 16px; letter-spacing: 0.2px; text-align: center; color: black; overflow-wrap: break-word; background:#bbe4ff; } </style></head><body> <div id="urlExpander" class="container"> <h1>Enter a URL</h1> <input type="text" placeholder="paste URL" id="input"/> <button id="shorten">Shorten</button> <button id="expand">Expand</button> <div id="responseField"> </div> </div> <br/> <script src='//production-assets.codepen.io/assets/common/stopExecutionOnTimeout-b2a7b3fe212eaa732349046d8416e00a9dec26eb7fd347590fbced3ab38af52e.js'></script><script src='https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js'></script> <script >// Include data for accessing Google APIs const apiKey = 'AIzaSyCuAXNNV63VYrxW6bSIqbdREVfhOvmbjTk'; const url = 'https://www.googleapis.com/urlshortener/v1/url' // Some page elements const $inputField = $('#input'); const $expandButton = $('#expand'); const $shortenButton = $('#shorten'); const $responseField = $('#responseField'); // AJAX functions function expandUrl() { const urlToExpand = url + '?shortUrl=' + $inputField.val() + '&key=' + apiKey; fetch(urlToExpand).then(response => { if (response.ok) { return response.json(); } throw new Error('Request failed!'); }, networkError => console.log(networkError.message)).then(jsonResponse => { $responseField.append('<p> Your expanded URL is </p><p> ' + jsonResponse.longUrl + '</p>'); return jsonResponse; }) }; function shortenUrl() { const urlWithKey = url + '?key=' + apiKey; const urlToShorten = $inputField.val(); fetch(urlWithKey, { method: 'POST', headers: { "Content-type": "application/json" }, body: JSON.stringify({ longUrl: urlToShorten }) }).then(response =>{ if(response.ok){ return response.json(); } throw new Error('Request failed!') },networkError => console.log(networkError.message) ) .then(jsonResponse =>{ $responseField.append('<p> Your shortened URL is </p><p>' + jsonResponse.id + '</p>'); return jsonResponse; }) }; function expand() { $responseField.empty(); expandUrl(); return false; }; function shorten() { $responseField.empty(); shortenUrl(); return false; }; $expandButton.click(expand); $shortenButton.click(shorten); //# sourceURL=pen.js </script> </body></html>

Related: See More


Questions / Comments: