Função: HTTPExitProc
Seta uma função que será chamada quando uma sessão HTTP for finalizada por timeout.
HTTPExitProc ( < cFunction> ) --> Nil
Nome | Tipo | Descrição | Obrigatório | Referência |
cFunction | Caracter | Indica a string (nome da função) que será chamada quando a sessão for finalizada por timeout. | X |
Nil (Nulo)
Retorno nulo.
Retorno nulo.
- A chamada da função especificada por cFunction será realizada mediante a engine de working threads configurada para o job atual e deve ser do tipo WEBEX. A chamada será feita internamente emulando uma chamada de requisição de browse com link .apw, e esta chamada vai utilizar uma working thread livre para executar a função especificada.
- É importante salientar que a função especificada será chamada exclusivamente na finalização de uma session de usuário por timeout. Caso o serviço do Application Server seja finalizado, ou ocorra um término anormal do serviço, ou ocorra uma indisponibilidade de processos livres, a função especificada para saída não será chamada.
- A função que será chamada para tratamento da sessão finalizada, deve estar compilada no repositório de dados corrente, caso contrário um erro “Macro FC: cannot find function” ocorrerá.
- A chamada a função HTTPExitProc deverá ser feita na sessão em que se deseja setar a função de timeout e não afeta as outras sessões HTTP que por ventura possam estar carregadas no Application Server
- O retorno da função especificada em cFunction deve ser do tipo string para evitar um erro “[APWEXERR_0004] INVALID PROC RETURN TYPE” em tempo de execução.
- A sessão HTTP é finalizada automaticamente pelo Application Server antes da chamada à cFunction definida.
- O tempo de timeout pode ser definido no arquivo de configuração (totvsappserver.ini ou appserver.ini) na seção [HTTP] pelo parâmetro SessionTimeOut.
- Esta função é útil quando se deseja encaminhar todas as 'quedas' de sessão para uma única função de tratamento.
#include 'apwebex.ch'User Function TstSession()WEB EXTENDED INIT cHtml// cria uma sessao HTTPhttpSession->userid = '123'conout ("sessao criada")WEB EXTENDED ENDif (httpget->sto = "ok") // chamado a partir da url http://localhost/u_tstsession.apw?sto=ok conout("Setando funcao de timeout = u_terminas") HTTPExitProc('u_terminas')endifreturnuser function terminaS()cRet := HttpCountSession() conout("HTTP sessions = "+str(cRet))conout("Sessao terminada por timeout")return "ok"
Microsiga Protheus 8.11
,
Protheus 10
,
TOTVS Application Server 10
,
ByYou Application Server
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas