Pereiti prie turinio

Teksto Dalijimosi Įrankis - Nemokamas Kodo Fragmentų Klijavimo Įrankis

Akimirksniu dalinkitės tekstu ir kodo fragmentais naudodami nemokamą klijavimo įrankį. Funkcijos: sintaksės paryškinimas, pasirinktinis galiojimo laikas ir unikalūs URL. Jokia registracija nereikalinga!

Teksto Bendrinimo Įrankis

0 simboliai
Įkrovimo skaičiuotuvas...
📚

Dokumentacija

Teksto bendrinimo įrankis („Paste Bin“)

Teksto bendrinimo įrankis, dažnai vadinamas „paste bin“, yra tinklalapis, kuriame galima paskelbti teksto ar kodo bloką ir gauti nuorodą, rodančią tą tekstą kiekvienam, kuris ją atidaro. Šis „paste bin“ įrankis veikia tik naršyklėje, nereikalauja paskyros ir gali pasirinktinai pridėti sintaksės paryškinimą bei nuorodos galiojimo laiką.

Kaip veikia teksto bendrinimo įrankis

Dauguma „paste bin“ paslaugų saugo tekstą serveryje ir grąžina trumpą nuorodą, nukreipiančią į duomenų bazės eilutę. Šis įrankis veikia kitaip. Jis neturi nei serverio, nei duomenų bazės. Vietoj to jis sutalpina visą įrašą pačioje nuorodoje.

Kai kas nors spusteli „Create Link“, įrankis atlieka keturis veiksmus:

  1. Sukuria nedidelį objektą, kuriame saugomas tekstas, pasirinkta kalba ir galiojimo laikas (arba nieko, jei pasirinkta „never“).
  2. Šį objektą paverčia viena JSON teksto eilute.
  3. Paverčia JSON baitais naudodamas UTF-8 koduotę, kurią žiniatinklis naudoja visur.
  4. Šiuos baitus užkoduoja kaip base64url – schemą, kuri bet kokius baitus paverčia raidėmis, skaitmenimis, - ir _, todėl rezultatas yra saugus naudoti URL.

Užkoduotas tekstas įterpiamas po #p= puslapio URL pabaigoje. Viskas po # vadinama fragmentu. Įkeldama puslapį naršyklė niekada nesiunčia fragmento serveriui, todėl įrašo turinys niekur neperduodamas. Nuorodos nuskaitymas vyksta atvirkštine tvarka: iššifruojamas base64url tekstas, baitai vėl paverčiami JSON eilute naudojant UTF-8, o JSON išanalizuojamas, kad būtų atkurtas tekstas, kalba ir galiojimo laikas.

Kadangi fragmente yra visas įrašas, bendrinimo nuoroda veikia bet kuriame įrenginyje ar naršyklėje, ne tik tame, kuriame ji buvo sukurta. Nereikia nieko ieškoti. Nuorodą atidarius, turinys parodomas; taip pat atidarius atsisiųstą failą nereikia serverio klausti, kas jame yra.

Patogumo dėlei įrankis taip pat saugo vietinę kiekvieno įrašo kopiją naršyklės saugykloje kaip juodraštį. Ši kopija tik padeda tai pačiai naršyklei vėl rasti anksčiau sukurtus įrašus; ji nedalyvauja atidarant bendrinamą nuorodą, o ją ištrynus nė viena bendrinimo nuoroda nenustoja veikti, nes ji nuo šios kopijos nepriklausė.

Sintaksės paryškinimas

Sintaksės paryškinimas spalvomis išskiria kodo dalis, pavyzdžiui, raktinius žodžius, tekstines eilutes ir komentarus, todėl jo struktūrą lengviau perskaityti. Įrankis palaiko dešimt parinkčių:

  • Paprastasis tekstas (be paryškinimo)
  • JavaScript
  • TypeScript
  • Python
  • Java
  • HTML
  • CSS
  • JSON
  • SQL
  • Bash

Pasirinkta kalba saugoma užkoduotame duomenų pakete, todėl atidarius nuorodą paryškinimas pritaikomas automatiškai, žiūrinčiajam nieko nereikia pasirinkti.

Galiojimo pabaigos formulė

Galiojimo parinktis nustato absoliučią laiko žymą, matuojamą milisekundėmis nuo 1970 m. sausio 1 d. (įprasto atskaitos taško skaičiavimuose, vadinamo „Unix“ epocha). Įrankis prie nuorodos sukūrimo momento prideda nustatytą laiko trukmę:

ParinktisPridedamas laikas
Niekadalaiko žyma nesaugoma
1 valanda60 × 60 × 1 000 ms
1 diena24 × 60 × 60 × 1 000 ms
1 savaitė7 × 24 × 60 × 60 × 1 000 ms
1 mėnuo30 × 24 × 60 × 60 × 1 000 ms (fiksuotos 30 dienos, ne kalendorinis mėnuo)

Pavyzdžiui, jei nuoroda sukuriama laikrodžiui rodant 1 700 000 000 000 ms ir kūrėjas pasirenka „1 Week“, išsaugota galiojimo pabaigos reikšmė yra:

1 700 000 000 000 + (7 × 24 × 60 × 60 × 1 000) = 1 700 604 800 000 ms

Kai žiūrintysis atidaro nuorodą, įrankis palygina išsaugotą laiko žymą su dabartiniu laiku. Jei išsaugotas laikas jau praėjo, įrankis vietoj teksto rodo pranešimą „This content has expired“. Kadangi galiojimo pabaigos laiko žyma kartu su tekstu perduodama nuorodoje, šis tikrinimas vienodai veikia bet kuriame įrenginyje.

Kaip įrašas tampa nuoroda

Tarkime, kas nors bendrina paprastąjį tekstą Hello, world! be galiojimo pabaigos. Įrankis sukuria šį JSON objektą, naudodamas trumpus laukų pavadinimus, kad nuoroda būtų trumpesnė:

1{"t":"Hello, world!","l":"plaintext","e":null}
2

Šį JSON jis užkoduoja kaip UTF-8 baitus, tada kaip base64url ir gauna:

1eyJ0IjoiSGVsbG8sIHdvcmxkISIsImwiOiJwbGFpbnRleHQiLCJlIjpudWxsfQ
2

Visa bendrinimo nuoroda yra puslapio adresas ir po #p= esantis prieigos raktas:

1https://whiz.tools/en/development/paste-bin-tool#p=eyJ0IjoiSGVsbG8sIHdvcmxkISIsImwiOiJwbGFpbnRleHQiLCJlIjpudWxsfQ
2

Kiekvienas, atidaręs šią nuorodą, gauna naršyklėje iššifruotą prieigos raktą, perskaito Hello, world! kaip paprastąjį tekstą ir jį parodo. Serverio niekada nebuvo prašoma atlikti jokio veiksmo.

Kaip bendrinti tekstą ar kodą

  1. Įveskite arba įklijuokite tekstą į teksto lauką. Rašant tekstą simbolių skaitiklis atnaujinamas.
  2. Pasirinktinai pasirinkite kalbą sintaksės paryškinimo meniu.
  3. Pasirinktinai pasirinkite, kiek laiko nuoroda turėtų galioti.
  4. Spustelėkite „Create Link“.
  5. Nukopijuokite sugeneruotą nuorodą mygtuku „Copy Link“ ir išsiųskite ją pasirinktu būdu.

Kaip peržiūrėti bendrinamą tekstą

  1. Atidarykite bendrinamą nuorodą.
  2. Tekstas iškart parodomas, o pasirinkus kalbą pritaikomas ir paryškinimas.
  3. Naudodami „Copy Text“ nukopijuokite turinį į iškarpinę.
  4. Naudodami „Create New“ pradėkite naują įrašą.

Sukūrus nuorodą įrašo redaguoti nebegalima. Norint pakeisti tekstą, reikia sukurti naują įrašą ir bendrinti naują nuorodą.

Dažniausi naudojimo atvejai

  • Kūrėjams, bendrinantiems kodo fragmentą peržiūrai ar pagalbai derinant.
  • Mokytojams, bendrinantiems pradinį kodą ar instrukcijas.
  • Visiems, perkeliantiems teksto bloką, pavyzdžiui, sąrašą ar pastabų rinkinį, tarp dviejų savo įrenginių.

Jei tekstą vienu metu turi galėti redaguoti keli žmonės, geriau tinka bendrinamų dokumentų įrankis. Jei kodo istoriją reikia išsaugoti neribotą laiką, geriau tinka versijų valdymo sistema, pavyzdžiui, „Git“.

Apribojimai ir privatumas

Kadangi visas įrašas yra nuorodoje, praktinį dydžio apribojimą lemia pačios URL ilgis, o ne saugyklos kvota. Naršyklės gali apdoroti ilgus URL, tačiau daugelis el. pašto programų, pokalbių programėlių ir senesnių sistemų labai ilgas nuorodas sutrumpina arba atmeta, todėl itin dideli įrašai gali būti nepatogiai perduodami kai kuriais kanalais. Trumpiems ir vidutinio dydžio įrašams tai neturi įtakos.

Fragmentas niekada nesiunčiamas serveriui, todėl pats įrankis niekada nesužino, kas buvo įklijuota. Kiekvienas, turintis tikslią nuorodą, gali ją atidaryti, todėl su nuoroda reikia elgtis taip pat kaip su joje esančiu tekstu: tokiu būdu nesidalykite slaptažodžiais ar kitais slaptais duomenimis ir neskelbkite nuorodos viešai, jei turinys turi likti privatus.

Dažnai užduodami klausimai

Kur iš tikrųjų saugomas bendrinamas tekstas? Jis nesaugomas niekur atskirai nuo nuorodos. Tekstas, pasirinkta kalba ir galiojimo laikas tiesiogiai užkoduoti nuorodos fragmente – dalyje po #. Pati nuoroda yra vienintelė kopija.

Ar nuoroda veikia kitame įrenginyje ar naršyklėje? Taip. Kadangi turinys perduodamas nuorodoje, bet kuris ją atidaręs įrenginys gali iššifruoti ir parodyti turinį. Paskyra ar pradinė naršyklė nereikalinga.

Kas nutiks, jei išvalysiu naršyklės duomenis? Esamoms bendrinimo nuorodoms nieko nenutiks. Jos nepriklauso nuo nieko, kas saugoma naršyklėje, o tik nuo pačios nuorodos. Išvalius naršyklės duomenis pašalinama tik vietinė patogumo kopija, kurią naršyklė saugo įrenginyje sukurtų įrašų patogumui.

Ar galiu redaguoti įrašą sukūręs nuorodą? Ne. Norint atlikti bet kokį pakeitimą, reikia sukurti naują nuorodą, nes sukūrimo metu turinys įterpiamas į nuorodą.

Kas nutinka pasibaigus įrašo galiojimui? Atidarius nebegaliojančią nuorodą, vietoj pradinio teksto rodomas pranešimas, kad turinio galiojimas baigėsi. Pati nuoroda vis dar egzistuoja; ji tiesiog neberodo turinio, kai praeina išsaugoto galiojimo pabaigos laikas.

Ar yra dydžio apribojimas? Nėra fiksuoto saugyklos dydžio apribojimo, tačiau kai kurios el. pašto programos ir susirašinėjimo programėlės gali atmesti arba sutrumpinti labai ilgus URL, todėl labai dideliems įrašams geriau naudoti specialų failų bendrinimo įrankį.

Šaltiniai

  1. "UTF-8." MDN Web Docs, „Mozilla“, https://developer.mozilla.org/en-US/docs/Glossary/UTF-8
  2. "Base64." MDN Web Docs, „Mozilla“, https://developer.mozilla.org/en-US/docs/Glossary/Base64
  3. "URL." MDN Web Docs, „Mozilla“, https://developer.mozilla.org/en-US/docs/Web/API/URL
  4. "Syntax highlighting." „Wikipedia“, „Wikimedia Foundation“, https://en.wikipedia.org/wiki/Syntax_highlighting
  5. "Unix time." „Wikipedia“, „Wikimedia Foundation“, https://en.wikipedia.org/wiki/Unix_time