webHttpReq

4.10/3
Scarica una pagina o file da Internet.

Sintassi

EH_WEB *	webHttpReq(	CHAR *	pszUrl,
						CHAR *	pszReq,
						void *	(*funcNotify)(EH_WEB *,EN_MESSAGE cmd,LONG Info,void *),
						BOOL	bAsync,
						INT		iTimeoutSec,
						EN_WPA	enWpa);

Parametri


Valori di ritorno

Ritorna la struttura EH_WEB valorizzata.

Commenti

La funzione esegue una download di una pagina internet con protocollo http: il risultato viene inserito all'interno della struttura allocata di ritorno EH_WEB.
La struttura viene sempre ritornata: se la richiesta va a buon fine psWeb->enError è uguale a 0 e la pagina/file viene allocata in psWeb->pData.
La richiesta può essere di tipo sincrono o asincrono.
// Nuovo sistema sincrono
EH_WEB *psWeb;
psWeb=webHttpReq(szUrl,"GET",NULL,false,0,0);
if (!psWeb->sError.enCode) { // Leggi pagina caricata }
webHttpReqFree(psWeb);

Uso Asincrono

In caso di uso asincrono la funzione ritorna immediatamente.
La funzione funcNotify associata viene chiamata diverse volte con valori di EN_MESSAGE differenti per permettere di seguire lo scaricamento della pagina.
L'ultimo messaggio inviato è WS_CLOSE sia che il caricamento sia andato a buon fine oppure no.

// Funzione per prendere il valore di ritonro in modo Asincrono
static void * _webUpdateControl(EH_WEB *psWeb,EN_MESSAGE enMess,LONG info ,void *ptr) {

	EH_JSON * psJson;
	BYTE *pMode;
	SINT iMode=0;

	if (enMess!=WS_CLOSE) return NULL;

	if (psWeb->enError) {
		printf("## errore: %d" CRLF,psWeb->enError);
		return NULL;
	}

// Valore in psWeb->pData .. esempio
	psJson=jsonCreate(psWeb->pData,NULL);
	.
	.
	.

	psJson=jsonDestroy(psJson);
	return NULL;
}

Easyhand C/C++: webHttpReq | Last modified: 10/10/2020 16.22.52 Europe/Rome | #1.1409
P.. 550
Easyhand C/C++
Una mano alle tue idee.
Privacy Policy