ciao ragazzi ..
è possibile accedere ad un database attraverso xml-rpc?
grazie
ciao ragazzi ..
è possibile accedere ad un database attraverso xml-rpc?
grazie
Dipende cosa intendi per "attraverso xml-rpc".
Puoi creare un servizio xml-rpc in PHP che permette al client xml-rpc di accedere ai dati conservati nel database.
come ha detto filippo, puoi creare un webservice che ti permetta di effettuare le operazioni sul database
ti consiglio di dare un occhio alle funzionalità offerte da PHP a riguardo
http://it.php.net/xml-rpc
Pur essendo XML-RPC più facile è un pò meno portabile rispetto ad altri protocolli come SOAP, che poggiandosi su WSDL, ti permettono di creare webservice estremamente flessibili e performanti ma soprattutto indipendenti dal linguaggio
Diciamo che SOAP è il mezzo di trasporto mentre WSDL contengono le specifiche per le strutture che viaggiano sul mezzo di trasporto SOAP
Svariati linguaggi oggi danno la possibilità, definendo dove pescare il wsdl, di creare in automatico, a run-time, gli oggetti per la gestione delle chiamate cosa che è decisamente comoda
Ti consiglio anche, quindi, di dare un occhiata a SOAP e WSDL
http://it2.php.net/soap
Nel caso tu non possa usare PHP5 ti consiglio CALDAMENTE di NON lavorare con le nusoap perché, per esperienze abb. recenti, sono buggate ... sono seriamente buggate
VM su SSD da 5$! https://www.digitalocean.com/?refcode=f6925c7f0ddb
creare un webservice significa creare un server (es: in php) che accetti richieste XML-RPC dal client?
e la lettura e scrittura nel database come avviene?
ci sono procedure da richiamare presenti nel server?
(scusate se le domande sono molto semplici .. ma non ci capisco niente .. e cerco di comprenderne il funzionamento)
il client invia un messaggio (richiesta) in formato XML-RPC al server ... esatto?
beh, non vai a sviluppare un server da zero, si usa direttamente il webserver per queste cose
tu andresti sviluppare il codice che legge XML, lo interpreta, esegue la richiesta ed restituisce la risposta
Ma, nel caso specifico ... andando ad usare già delle classi che fanno questo lavoro tu non devi far altro che far gestire loro la lettura, l'interpretazione e la restituzione della risposta occupandoti esclusivamente di eseguirla in base ai parametri che ti vengono forniti
durante l'esecuzione della richiesta puoi operare come più ti serve ... ad esempio la richiesta, secondo me, non dovrebbe contenere sempre user e pass di connessione ma un codice di sessione onde evitare la continua trasmissione dei dati di accesso.
Inoltre le richieste dovrebberò stare su HTTPS e non su HTTP perché è imolto più facile intercettarle
per finire, si, il client invia il messaggio nel formato richiesto ... ma se hai già un client devi sviluppare il webservice seguendo le specifiche utilizzate dal client ... se è presente un file WSDL è estramente semplice perché ci sono tool che generano automaticamente il codice![]()
VM su SSD da 5$! https://www.digitalocean.com/?refcode=f6925c7f0ddb
ok .. allora vediamo se ho capito bene:
il client invia una richiesta xml-rpc (header + xml) con il nome del metodo da lanciare e i relativi parametri
il server acceta tale richiesta .. la passa al parser .. preleva il nome del metodo e i parametri .. esegue la procedura .. e restituisce un messaggio xml-rpc (header + xml) al client
il client fa il parser della risposta e visualizza il risultato.
esatto???
ma quindi quello che io devo implementare è il metodo (la procedura) nella parte del server.
cioè .. devo creare la funzione che mi occorre. (es: una query ad un database ??)
grazie per l'aiuto e per le risposte fornite