cFosSpeed è ora in nuove mani. Atlas Tech Solutions ne possiede, sviluppa e vende nuove versioni
Nuovo! Dai creatori di cFosSpeed: Il cFos EVSE

Gli scripts standard di cFos PNet

Gli scripts installati insieme a cFos PNet possono mostrarti come implementare funzionalità server con Javascript. Sono programmati per essere utilizzati attraverso client browser scripting, come jQuery. Per convenzione gli scripts dal lato server utilizzano l'estensione .jss mentre dal lato client utilizzano l'estensione .js. cFos PNet *esegue* file .jss , mentre invia i file .js al browser.

Puoi effettuare il debugging degli script con Visual studio o Visual Web Developer. Per il debugging degli script hai bisogno di versioni di Visual studio o Visual Web Developer con supporto remoto per il debugging, come Visual studio Professional Edition. Per abilitare il debugging degli script, imposta la key enable_script_debugging=1 nella sezione [param] del file GLOBAL.INI situato nella cartella c:\programdata\cFos\cFosPNet .

Se non hai uno script debugger installato, impostalo a 0 altrimenti gli scripts potrebbero avere problemi su alcune macchine. Puoi anche caricare cfospnet.exe con -enable_script_debugging o lo switch -esd da linea di comando per abilitare il debugging degli script all'avvio del programma.

Amministrazione ed autenticazione utenti basata su Script

Nella cartella pub c'è una sotto-cartella users contenente una sottocartella per ogni utente in possesso di un account sul tuo server cFos PNet. Le password degli utenti o altri dati opzionali dei profili sono contenuti in una hash list, nominata PROFILE.TXT. Ciò permette accessi veloci e cachati dal cFos PNet built-in HTTP authentication. Nella cartella public c'è anche una sotto-cartella www con una sottocartella per ogni utente. Questa cartella può contenere i file scaricati di quell' utente. Lo script file_op.jss consente all'utente di caricare files dentro questa cartella.

Gli scripts si autenticano in base alle relative .htaccess impostazioni. Quindi hai bisogno di credenziali utente appropriate per l'utente al quale appartiene la directory.

Qui c'è una breve descrizione degli scripts. Dovresti dare un'occhiata al codice sorgente, per vedere come funzionano.
makedir2.jssSe nessun index.htm o index.html file è presente nella directory richiesta cFos PNet avvierà questo script per generare un elenco di directory.
Lo script utilizza il FileSystemObject per raccogliere informazioni circa il contenuto della directory corrente. Quindi carica un file di modello XML, lo analizza e genera una pagina HTML con il contenuto delle directory e dei frammenti forniti dal XML. Per modificare l'aspetto o la funzionalità dell'elenco directory modificare il modello XML. Il file HTML risultante possiede dei collegamenti base ai file di mantenimento in esso contenuti. Come Amministratore è possibile accedere utilizzando l'autenticazione HTTP e rinominare, cancellare file o cartelle, caricare file così come creare nuove cartelle. Questo è supportato da jQuery sul lato client, che è fondamentalmente utilizzato per inviare richieste a cFos PNet. Lo script lato server file_op.jss esegue l'autenticazione HTTP necessarie e gestisce le operazioni sui file.

file_op.jssEsegue le operazioni sui file in base all'autenticazione. Le operazioni sui file sono rename, delete, mkdir per creare una cartella e caricarla. Il caricamento ha solitamente bisogno di autenticazione. Il browser invia sempre prima l'intero file da caricare sul server e poi ottiene le informazioni di autenticazione, ecco perchè si potrebbe inviare il file due volte. Per dare al browser prima le informazioni di autenticazione, lo script file_op.jss supporta un'operazione di caricamento di pre-flight. Il browser, con una richiesta AJAX, chiede al server l'autenticazione HTTP di risposta (401) e poi la utilizza automaticamente per l'upload. L'upload viene gestito da una funzione in upload.jss, che utilizza gli oggetti dei file di cFos PNet per permettere di caricare file con una dimensione arbitraria.

user_op.jssEsegue le funzioni di base di amministrazione degli utenti: create, delete, reset password e list. È richiesto l'utente admin per l'autenticazione.

list_op.jssPerché l'elenco di hash svolge un ruolo importante per cFos PNet, list_op.jss fornisce operazioni di elenchi base disponibili per le richieste Ajax. Lo schema di autenticazione viene eseguito come descritto sopra. Cioè: a seconda della posizione dello script viene richiesta l'autenticazione dell'utente. L'autenticazione viene effettuata secondo le direttive del rispettivo .htaccess file. list_op.jss ed offre le seguenti operazioni:

get Ottenere un elenco di valori nella lista di hash.
set Impostare un elenco di chiavi di un elenco di valori.
save Salva una snapshot su disco.
erase Consente di cancellare l'elenco di chiavi.
clear Consente di cancellare tutte le chiavi.
remove Cancellare la lista dalla memoria / disco.
size Restituire la dimensione dell'elenco.
list Elencare tutti gli elementi della lista di hash.

L'Ajax in dyndns.htm fa uso di queste operazioni per impostare le informazioni di configurazione DynDNS.

dyndns.jssEsegue o annulla la registrazione DynDNS, utilizzando i dati di configurazione della lista di hash dyndns.txt nella cartella privata.
Può essere utilizzato in fase d'avvio ed arresto del server(vedi Capitolo 1).

get_connections.jssUtilizzato per visualizzare le connessioni HTTP in corso. L'HTTP avviene tramite TCP. Per accelerare le richieste HTTP, il browser tenta di riutilizzare le connessioni TCP per le richieste HTTP. La richiesta HTTP reale è solo un breve messaggio con una risposta. Il browser chiude la connessione TCP dopo pochi secondi. In tal modo sarà possibile vedere un utente solo per un breve periodo di tempo. Se l'autenticazione ha avuto successo il nome dell'utente verrà restituito con l'indirizzo IP degll'utente stesso.

stretch.jssPoiché è sempre un peso per il web master il ridimensionamento delle immagini al formato utilizzato dalla pagina web, abbiamo implementato un piccolo script, che utilizza l'oggetto immagine di cFos PNet (GDI+). Esso usa un parametro filename, una w (larghezza) ed una h (altezza) nella stringa di query dell'URL. Se le immagini sono di dimensione arbitraria, è necessario utilizzare un solo parametro per mantenere le proporzioni dell'immagine. makedir2.jss usa i link a questo script per visualizzare le immagini di anteprima per le immagini memorizzate nella cartella corrente.

utils.jssCollezione di utilità per la semplificazione dello scripting lato server. Esso offre le seguenti funzionalità:

- Aumentare facilmente gli oggetti web server e le sue funzioni.
- estendere gli oggetti Javascript String con alcune utili funzioni.
- eseguire la valutazione dei parametri di script della stringa di query o dei dati del modulo usato con POST.
- caricamento, scaricamento ed inoltro (via mail) di file di piccola dimensione.
- Date rfc 1123 sono usate nei cookies.
- cookies.
- una semplice funzione di trasformazione XML.

Se si utilizza cFos PNet per i progetti più grandi, si consiglia di unire le funzioni in moduli, invece di usare un semplice file di script incluso. cFos PNet offre il supporto delle specifiche del modulo common.js.

Documentazione cFos Personal Net