* * * *

Privacy Policy

Blog italiano

Clicca qui se vuoi andare al blog italiano su Lazarus e il pascal.

Forum ufficiale

Se non siete riusciti a reperire l'informazione che cercavate nei nostri articoli o sul nostro forum vi consiglio di visitare il
Forum ufficiale di Lazarus in lingua inglese.

Lazarus 1.0

Trascinare un file nel programma
DB concetti fondamentali e ZeosLib
Recuperare codice HTML da pagina web
Mandare mail con Lazarus
Stabilire il sistema operativo
Esempio lista in pascal
File INI
Codice di attivazione
Realizzare programmi multilingua
Lavorare con le directory
Utilizzare Unità esterne
TTreeView
TTreeview e Menu
Generare controlli RUN-TIME
LazReport, PDF ed immagini
Intercettare tasti premuti
Ampliare Lazarus
Lazarus e la crittografia
System Tray con Lazarus
UIB: Unified Interbase
Il file: questo sconosciuto
Conferma di chiusura di un applicazione
Liste e puntatori
Overload di funzioni
Funzioni a parametri variabili
Proprietà
Conversione numerica
TImage su Form e Panel
Indy gestiore server FTP lato Client
PopUpMenu sotto Pulsante (TSpeedButton)
Direttiva $macro
Toolbar
Evidenziare voci TreeView
Visualizzare un file Html esterno
StatusBar - aggirare l'errore variabile duplicata
Da DataSource a Excel
Le permutazioni
Brute force
Indy 10 - Invio email con allegati
La gestione degli errori in Lazarus
Pascal Script
Linux + Zeos + Firebird
Dataset virtuale
Overload di operatori
Lavorare con file in formato JSON con Lazarus
Zeos ... dietro le quinte (prima parte)
Disporre le finestre in un blocco unico (come Delphi)
Aspetto retrò (Cmd Line)
Lazarus 1.0
Come interfacciare periferica twain
Ubuntu - aggiornare free pascal e lazarus
fpcup: installazioni parallele di lazarus e fpc
Free Pascal e Lazarus sul Raspberry Pi
Cifratura: breve guida all'uso dell'algoritmo BlowFish con lazarus e free pascal.
Creare un server multithread
guida all'installazione di fpc trunk da subversion in linux gentoo
Indice
DB concetti fondamentali e connessioni standard
Advanced Record Syntax
DB concetti fondamentali e DBGrid
DB concetti fondamentali e TDBEdit, TDBMemo e TDBText
Advanced Record Syntax: un esempio pratico
Superclasse form base per programmi gestionali (e non)
Superclasse form base per programmi gestionali (e non) #2 - log, exception call stack, application toolbox
Superclasse form base per programmi gestionali (e non) #3 - traduzione delle form
Superclasse form base per programmi gestionali (e non) #4 - wait animation
Un dialog per la connessione al database:TfmSimpleDbConnectionDialog
Installare lazarus su mac osx sierra
immagine docker per lavorare con lazarus e free pascal
TDD o Test-Driven Development
Benvenuto! Effettua l'accesso oppure registrati.
Luglio 24, 2024, 11:34:29 pm

Inserisci il nome utente, la password e la durata della sessione.

25 Visitatori, 0 Utenti

Autore Topic: THTTPSend e pagina web con utente e password  (Letto 1204 volte)

bonmario

  • Hero Member
  • *****
  • Post: 1310
  • Karma: +10/-1
THTTPSend e pagina web con utente e password
« il: Novembre 09, 2023, 01:27:44 pm »
Ciao a tutti,
da anni uso la classe THTTPSend di Synapse per scaricare una pagina web o un file.

Ora avrei bisogno di scaricare una pagina web in locale, per poi analizzarla, come già fatto in passato.
Il problema, stavolta, è che l'url di partenza è un url di SharePoint, e quindi prima di poter scaricare la pagina, mi dovrei autenticare con utente e password.

Avete idea di come si fa?

Grazie, Mario

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1304
  • Karma: +43/-0
  • Prima ascoltare, poi decidere
Re:THTTPSend e pagina web con utente e password
« Risposta #1 il: Novembre 09, 2023, 02:18:25 pm »
Se basta username e password dovresti poterle inserire nel "pacchetto" di invio tramite le proprietà del pacchetto stesso (dovrebbero esserci UserName e Password che vengono poi inviate in base64).

In alternativa potresti provare ad usare il vecchissimo trucco ed inserire un indirizzo tipo questo (invece del classico):

http://nome:password@URL/

... altrimenti devi prima autenticarti con le funzioni di Synapse (che però non conosco).

Ciao
« Ultima modifica: Novembre 09, 2023, 03:08:05 pm da DragoRosso »
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

nomorelogic

  • Global Moderator
  • Hero Member
  • *****
  • Post: 2896
  • Karma: +20/-4
Re:THTTPSend e pagina web con utente e password
« Risposta #2 il: Novembre 09, 2023, 04:03:41 pm »
ciao bonmario
ti consiglierei di provare a risolvere prima con curl
una volta identificata la sintassi di curl, adattare la cosa ai vari client http è più facile

ho trovato questo link
vedi se ti può essere utile
https://sharepoint.stackexchange.com/questions/268112/connect-to-sharepoint-online-rest-api-using-curl
Imagination is more important than knowledge (A.Einstein)

bonmario

  • Hero Member
  • *****
  • Post: 1310
  • Karma: +10/-1
Re:THTTPSend e pagina web con utente e password
« Risposta #3 il: Novembre 09, 2023, 05:33:37 pm »
@DragoRosso: purtroppo il tuo trucco non mi funziona.

@nomorelogic: partendo dal link che mi hai consigliato, ho provato il comando seguente:
Codice: [Seleziona]
curl -X GET --ntlm -u <email>:<password>  https://mycompany.sharepoint.com/<URL> 

La prima volta l'ho lanciato volutamente con la password sbagliata, e mi ha restituito l'errore 403
La seconda volta ho messo la password corretta, ma così facendo, non succede niente: non mi da errori, e mi torna al prompt di DOS senza fare niente

P.S. Non avevo mai usato il comando "curl", quindi non so come interpretare questo risultato. Se non ho capito male, avrebbe dovuto scaricarmi la pagina, giusto?

Grazie, Mario

bonmario

  • Hero Member
  • *****
  • Post: 1310
  • Karma: +10/-1
Re:THTTPSend e pagina web con utente e password
« Risposta #4 il: Novembre 09, 2023, 05:44:42 pm »
Rilanciando aggiungendo il parametro "-v", mi restituisce più informazioni.

Forse il problema è questo?
Codice: [Seleziona]
< HTTP/1.1 401 Unauthorized

Grazie, Mario
« Ultima modifica: Novembre 09, 2023, 05:49:21 pm da bonmario »

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1304
  • Karma: +43/-0
  • Prima ascoltare, poi decidere
Re:THTTPSend e pagina web con utente e password
« Risposta #5 il: Novembre 09, 2023, 07:54:16 pm »
Il link proposto da @nomorelogic propone le credenziali sotto forma di API, ed è proprio ciò che mi aspetterei da servizi come SharePoint.

Devi seguire passo passo ciò che dice il link, con le tipiche righe di comando criptiche dei linuxiani (che ha un pò di ... marziani ...  ;) ).

Dovresti poter effettuare ciò anche a codice.

Ciao
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

nomorelogic

  • Global Moderator
  • Hero Member
  • *****
  • Post: 2896
  • Karma: +20/-4
Re:THTTPSend e pagina web con utente e password
« Risposta #6 il: Novembre 10, 2023, 06:50:31 am »
Ciao
Leggendo in fondo al link, c'è n'è un altro
Here's slightly different solution

Da quel che leggo sembra che per usare le api bisogna registrare l'app ed ottenere in paio di id.

Poi lo script Linux (dove i curli sono 2) che mette insieme il tutto e fa una richiesta.

Probabilmente devi seguire il secondo link (che pare più articolato ma forse è l'unico modo).

Imagination is more important than knowledge (A.Einstein)

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1304
  • Karma: +43/-0
  • Prima ascoltare, poi decidere
Re:THTTPSend e pagina web con utente e password
« Risposta #7 il: Novembre 10, 2023, 09:09:18 am »
Ciao
Leggendo in fondo al link, c'è n'è un altro
Here's slightly different solution
Da quel che leggo sembra che per usare le api bisogna registrare l'app ed ottenere in paio di id.
Poi lo script Linux (dove i curli sono 2) che mette insieme il tutto e fa una richiesta.
Probabilmente devi seguire il secondo link (che pare più articolato ma forse è l'unico modo).

Avere l'ID per l'APP è necessario, ed è ciò che il nuovo modo di accesso ai servizi vuole. Tieni presente che un singolo ID (anche se non è consigliato, e addirittura vietato per qualche servizio)  può essere usato da più APP. Occhio ad usarle in contemporanea, stanno diventando stringenti anche controlli di questo tipo, legati alla sicurezza.

OAUTH2, ID per APP, critografia, doppia identificazione, oltre alle immancabili password e ora anche ai nuovi PID Microsoft ..... ma quanto era bello una volta ai tempi delle sole username e password ?

Buon lavoro
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

quack

  • Jr. Member
  • **
  • Post: 78
  • Karma: +7/-0
Re:THTTPSend e pagina web con utente e password
« Risposta #8 il: Novembre 10, 2023, 12:05:33 pm »
Se non ho capito male anche Microsoft permette l'accesso alle app meno sicure, basta abilitare la verifica in due passaggi e creare la password dedicata all'app che si vuole abilitare.

Non so se è una soluzione applicabile al tuo caso.
SO: Fedora\W10
Lazarus: Trunk\3.0
FPC: Trunk\3.2.2

bonmario

  • Hero Member
  • *****
  • Post: 1310
  • Karma: +10/-1
Re:THTTPSend e pagina web con utente e password
« Risposta #9 il: Novembre 10, 2023, 01:12:41 pm »
Grazie a tutti per le risposte.
Provo a vedere cosa riesco a tiare fuori !!

Grazie, Mario

 

Recenti

How To

Utenti
  • Utenti in totale: 791
  • Latest: rnervi
Stats
  • Post in totale: 18914
  • Topic in totale: 2253
  • Online Today: 33
  • Online Ever: 900
  • (Gennaio 21, 2020, 08:17:49 pm)
Utenti Online
Users: 0
Guests: 25
Total: 25

Disclaimer:

Questo blog non rappresenta una testata giornalistica poiché viene aggiornato senza alcuna periodicità. Non può pertanto considerarsi un prodotto editoriale ai sensi della legge n. 62/2001.