Lag URL Om KortURL
Tjenesten ble i hovedsak startet av Sveinung Marvik. Første URL ble forkortet 2002-10-07 19:11:53. Etterhvert lagde Sveinung knappe-beskrivelser for IE og Opera også.

En tid tilbake ble det skrevet et alternativt grensesnitt som et Perl-skript. Dette ble brukt av en IRC-bot.

Den 2005-07-28 fant Sveinung ut at det hadde vært lurt med en RSS-feed for dynamisk boklenke for de 10 siste URL-ene. Kode utviklet av Rune Nordbøe Skillingstad, for et helt annet prosjekt, ble resirkulert og tilpasset. På dette tidspunktet ble databasen utvidet til å ha med et tittel-felt. Kode for å innhente dette ble også resirkulert fra et annet prosjekt.

Som vanlig når Sveinung utvikler en eller annen web-tjeneste, klarer ikke Rune å holde fingrene av fatet. Først og fremst pga at Perl-skriptet nå ikke la inn tittel i databasen, var det behov for en opprydding i det. Resultatet ble en opprydding i Svenungs kode (flyttet ting over i bibliotek) og et SOAP-API, som er beskrevet nedenfor.

Nytt design ble også lansert av Sveinung 2005-07-29, bedre validering av URL-er og finpuss på tittel-fangeren ble også fikset. Denne siden ble også unfanget. Denne dagen var da løsningen fikk fart og masse ble testet og utført.

Løsningen er i sin helhet skrevet i PHP, det brukes MySQL til database og av «frekke» moduler nevner vi; CURL og SOAP fra PEAR.

Ikonet er laget av Andy Fitzsimon, og lisensiert under Public Domain

NO-domenet sponses av Rune Nordbøe Skillingstad, og DNS-tjeneste av Kai Ove Gran.

Lag URL Takk til
Vi har fått uvurderlig hjelp, tips og betatesting fra følgende (i tilfeldig rekkefølge):
  • Kai Ove Gran
  • Kenneth Rønningen Pedersen
  • Fredrik Skjåk-Bræk
  • Helge Olsen
  • Arne Bakkebø

Lag URL RSS
Her kan Sveinung skrive noe lurt om dette.

Det gjør han nok med tiden. Inntil videre, legger jeg derfor ut et skjermskudd av RSS-feeden som dynamisk boklenke i Firefox.

skjermskudd av firefox

Lag URL SOAP-API
Vi har utviklet et SOAP-API, eller en webservice om man vil, for KortURL-tjenesten. Denne gir et enkelt grensesnitt for å kunne utvikle egne programmer som tar ibruk denne forkortningen av URL-er.

Pr. i dag er det bare en funksjon lagURL(url) som returnerer en ferdig forkortet URL. Senere vil vi se på mulighetene for å tilby en mulighet for å også returnere title-feltet for denne URL-en. For tjenestebeskrivelse, se aktiv wsdl

MERK! på grunn av at SOAP er XML over en eller ennen TCP-protokoll, vil man måtte gjøre URL-strengen man sender inn til gyldig XML-format. Det vil for det meste si at man gjør om & til &. F.eks slik i Perl: $URL =~ s/&/&/g;

Eksempel på veldig simpelt Perl-skript:

#!/usr/bin/perl -lw use strict; use SOAP::Lite; print SOAP::Lite -> service("http://kurl.no/ws/index.php?wsdl") -> lagURL("http://no2.php.net/manual/en/function.htmlentities.php");

Mer komplekst Perl-eksempel:

#!/usr/bin/perl -lw use strict; use Getopt::Long; use SOAP::Lite; my $URL = ""; my $help = undef; GetOptions("help|h" => \$help); if ($help) { print "USAGE: url <url>"; exit(0); } if(@ARGV == 1) { $URL = $ARGV[0]; # Do better URL-validation if(!($URL =~ /^(?:(?:http(?:s)?|ftp):\/\/)? # proto (?:[^\W_]+[\.-])+[a-z]{2,4}(?::\d+)*\b # host:port (?:\/[\w=\.\,\?\&\;\#\~\/\%\-\+]*)?$ # localpart /ix)) { print "Probably not kosher URL"; exit(1); } if(length($URL) < 28) { print "Bratt-error: This url will be longer using kurl."; exit(1); } } else { print "Wrong number of arguments. (url -h for help)"; exit(1); } my $urlID = SOAP::Lite -> service("http://kurl.no/ws/index.php?wsdl") -> lagURL($URL); print "Short URL: $urlID";

Enkelt PHP-eksempel:

<?php require_once("SOAP/Client.php"); class URLServer extends SOAP_Client { function URLServerPort($path = "http://kurl.no/ws/index.php") { $this->SOAP_Client($path, 0); } function &lagURL($inputString) { return $this->call("lagURL", $v = array("inputString" => $inputString), array("namespace" => "urn:URLServer", "soapaction" => "urn:URLServer#urlserver#lagURL", "style" => "rpc", "use" => "encoded")); } } $w = new URLServerPort(); echo $w->lagURL("http://no2.php.net/manual/en/");
RSS 2.0
Vi forbeholder oss retten til å slette lenker som kan virke støtende og til å stenge ute IP-adresser som misbruker denne tjenesten.
kurl kort kortere kortest korturl forkort forkortet kortereurl tiny tinyurl url