Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    [ajax+javascript+asp.net] mantenere una connessione attiva?

    ciao a tutti,
    allora il mio problema e' questo
    ho 1 pagina internet che si deve aggiornare da sola senza effettuare il refresh ogni volta... per far questo inizialmente avevo pensato ad 1 script in ajax che ogni tot tempo richiedesse la pagina e la aggiornasse

    ovviamente questo metodo nn e' molto performante...
    quindi mi chiedevo se era possibile in qualche modo mantenere la connessione con la pagina attiva e far si che se ci sono modifiche vengono notificate immediatamente...
    (nn so come funziona facebook pero' vorrei far 1 cosa come quella che fa in home quando la home cambia e ti dice "ci sono novita' ecc ecc")

    la struttura del sito con cui devo far questo lavoro e' fatta da un server in asp.net per gestire il db e tutto il resto... sostanzialmente volevo far si che se il server riceve una informazione da 1 altro utente di 1 aggiornamento questo venisse mostrato immediatamente a tutte le persone che stanno guardando quella pagina...

    e' possibile farlo? io avevo pensato ad omettere la riga "ajax.setRequestHeader("connection", "close");"

    ma non so poi che comportamento ha il tutto (e soprattutto nn credo funzioni)
    W magica ROMA!

  2. #2
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Secondo me hai due strade:

    1) utilizzi visualstudio 2008 col framework 3.5 sp1. Questo ha integrato un framework ajax ed esiste pure il controllo timer che fa al caso tuo.

    2) non utilizzi questo framework ma altro.
    In questo caso puoi usare un codice simile (prendilo come speudo codice)
    codice:
    function controlla_database()
    {
        ajax("?comando_ajax=controlla_database", onload);
        function onload()
        {
            $("div1").innerHTML = this.request.responseText;
    
            window.setTimeout(controlla_database,1000);
        }
    }
    in questo caso ti consiglio di usare jquery
    Pietro

  3. #3
    correggimi se sbaglio..

    lo pseudo codice che hai messo praticamente lancia ogni secondo la funzione che si va a controllare 1 pagina o quello che e' giusto?

    quindi ogni secondo apre 1 pagina nuova, giusto?

    perche' in questo modo ogni volta il client si va a riscaricare 1 pagina (ad es di 1 kb) e se sono gia 100 persone significano 100kb/s di banda buttata no?

    io volevo far 1 qualche modo per evitare questo :P

    non so se e' possibile in html (oppure se e' il metodo che mi hai indicato tu [lo pseudo codice che hai messo e' moooolto pseudo :P {o forse e' dovuto al fatto che e' ajax su php e io ho visto quello per javascript }]) (mi erano finite le parentesi classiche :P)
    W magica ROMA!

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Vedo che non hai chiaro nemmeno cos'e' ajax... ti conviene iniziare da qui: http://javascript.html.it/guide/leggi/95/guida-ajax/

    ... ma ovviamente devi almeno avere le basi di javascript, altrimenti la vedo molto succube (ovvero devi chieder a qualcun'altro che te lo faccia )

    Se poi ho valutato male le tue basi ti chiedo scusa preventivamente
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    la guida l'ho gia letta e il javascript lo conosco gia

    il problema e' che in quella guida parla sempre di richieste che iniziano e finiscono li...

    quello che vorrei far io (e non so se e' possibile farlo) e' quello di aprire una connessione stabile con il server e far degli aggiornamenti in tempo reale (praticamente come fanno i giochi online) che nel momento in cui una persona fa un azione tutti la vedono...

    per far un esempio molto + facile...
    se volessi realizzare una chat e mettessi un aggiornamento ogni 2 secondi (praticamente come una shoutbox) avrei un download di 1 pagina ogni 2 secondi da tutte le persone collegate in quella chat...
    pero' in questo modo anche se e' molto simile ad una chat questa non e' performante come irc

    una cosa molto simile l'ho vista in 1 video su youtube applicata ad 1 browser game (seafight mi sembra fosse il gioco) in cui la persona vede in "tempo reale" lo spostamento delle altre navi... (premetto che nn ho giocato a quel gioco e quindi non so quanto sia effettivamente questo tempo reale ma dal video non mi sembrava tanto lungo)
    W magica ROMA!

  6. #6
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    I processi "push" ovvero e' il server che "spinge" le informazioni al client senza che queste siano state richieste, e' possibile solo utilizzando apposite applet java (tipo chat per intenderci), il funzionamento del www si basa su informazioni fornite solo su esplicita richiesta.

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  7. #7
    umm girando x internet (su facebook) mi e' sorto un dubbio...
    facebook non sfrutta applicazioni java... quindi come funziona la chat?
    W magica ROMA!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.