Postly, Javascript e JSON

Monday, 30 April 07
Da qualche giorno e' online Postly, un piccolo servizio che abbiamo sviluppato in poche ore di lavoro io e Fabio nella sua casa a Licata, tra una granita al limone al bar di Don Cicio e varie mangiate di pesce.

Il servizio e' semplice e non e' pensato per fare business... ma per offrire uno strumento al target di Merzia per eccellenza: i blogger. Spero che si diffonda e che gli utilizzatori ci diano qualche buona idea su come migliorarlo.

C'era qualche problema che riguardava Konqueror e Safari. La causa del malfunzionamento era nella libreria MFX che utilizziamo per molte cose ormai, sviluppata da noi stessi. MFX contiene una versione minimale di conversione di oggetti Javascript in stringhe JSON. Potete vedere il codice sorgente della libreria e utilizzarla nei vostri progetti se volete considerandola sotto la licenza GPL.

Tale libreria ad un certo punto ha bisogno di controllare se un oggetto Javascript e' un Array. Usavo una tecnica stupida che sembra molto diffusa su internet che cercava la stringa Array nel nome del costrutture. In realta' la cosa piu' immediata in questo caso e' quella giusta, e la tecnica da usare e' la seguente:
o = [1,2,3];
if (o.constructor == Array) alert("L'oggetto e' un array"); 
La stessa tecnica si puo' utilizzare per gli altri oggetti in javascript, quali Date e simili. Ovviamente per i tipi base che non sono oggetti basta utilizzare typeof(). Gli Array e le Date non sono tipi base, ma specializzazioni del tipo base object per cui
typeof([]);
Ritornera' la stringa "object" e non "array". Si deve controllare che il costruttore sia quello giusto per distinguere le diverse varianti di oggetti in giro.

Json e cookies

Postli non utilizza alcun database, registra tutto quello che c'e' da salvare nei cookie dell'utente. Poiche' le informazioni da registrare erano oggetti complessi la cosa piu' comoda e' stata quella di trasformare tali oggetti in stringhe Json e scriverle nel cookie dell'utente. Un colpo di eval() permette poi di ritrasformare il contenuto del cookie nell'oggetto Javascript originale.

Json viene anche usato dal PHP per leggere il contenuto del cookie, ma negli ultimi mesi abbiamo trovato molto piu' spesso prova della sua utilita' nel contesto di salvataggio e successivo caricamento di oggetti complessi da parte di Javascript.

Comunita'

Come gia' affermato Postli e' piu' un servizio alla comunita' che altro per cui il nostro piano piu' importante e' cercare di renderlo utile: se ci sono motivi che non lo rendono gradevole per alcuni blogger o utenti saremmo felici di sentirli per cercare di rimediare. Inoltre se ci siamo dimenticati dei servizi italiani provvederemo subito ad aggiungerli, a parte Smarking che continua a sembrare piu' o meno offline (spero che lo rimettano su).
4281 views*
Posted at 09:35:19 | permalink | 8 comments | print
Do you like this article?
Subscribe to the RSS feed of this blog or use the newsletter service in order to receive a notification every time there is something of new to read here.

Note: you'll not see this box again if you are a usual reader.

Comments

napyfab writes:
30 Apr 07, 10:08:09
Carino! ;o)
01 May 07, 12:25:16
Salvatore, come fai a conciliare 'poche' ore e 'varie' mangiate di pesce? :)
antirez writes:
01 May 07, 13:28:58
@Massimo: una cosa semplice come postli dovrebbe essere niente di piu' che un esercizio di poche ore se davvero vogliamo farci chiamare sviluppatori web ;)
01 May 07, 13:40:55
(e grandi mangiatori di pesce :)
antirez writes:
01 May 07, 13:45:44
@Massimo: hehe gia' ;) a parte il contributo decisivo dell'ottima cucina a casa di Fabio una sera diamo andati da Donna Rosa, a Licata: con meno di 30 euro a persona abbiamo mangiato benone. Qualche giorno fa invece sono andato a Scoglitti (la parte a mare di Vittoria(RG)) Al Gambero, anche buono ma IMHO troppa roba e troppo piu' caro (43 euro a testa... che almeno per le mie tasche e per la zona inizia a diventare pesante).
Gianni Amato writes:
01 May 07, 19:58:22
43 euro, avete preso una bella batosta :)

add.blacklist='Gambero'+city.location='Vittoria';

Carino Postli :)
pkirk writes:
03 May 07, 09:55:10
Carino! Si potrebbe usare qui in Italia al posto del concorrente addthis.com .
Cristian writes:
05 May 07, 17:36:40
Interessante. Potrei darci uno sguardo :)
comments closed