2010-02-21 10 views
7

So che c'è il plugin xmlrpc per trac. Ma io non sono il mio sito trac né ho diritti di amministratore. Ho solo un normale account utente con privilegi limitati.Il trac ha un'API remota?

Oltre all'ovvio basso livello di attività (invio di richieste tramite l'emulazione del browser Web), esiste un modo migliore per farlo?

Mi interessa principalmente in questi:

  • Visualizza la pagina wiki
  • pagina Modifica wiki
  • Invia nuovo ticket
  • View biglietteria
  • Aggiungi commento al biglietto

risposta

4

Se si guarda il "test funzionale" nella sorgente Trac, scopriremo che abbiamo codice che esercita Trac utilizzando twill. Potresti scoprire che è un utile punto di partenza per fare questo genere di cose.

0

Sembra che l'unico modo per farlo sarebbe quello di emulare il browser.

+0

Sarei interessato a sapere cosa si intende per "emulare del browser" dal momento che non sono a conoscenza di ciò che si fa riferimento. – RjOllos

+0

È necessario raccogliere i nomi esatti dei campi modulo, quindi creare una richiesta POST utilizzando quei campi (compresi quelli nascosti). Quindi la pagina html ritorna e sarà necessario analizzarla per le informazioni necessarie. Non molto elegante. Si chiama webscraping. – Kugel

0

Trac non fornisce un'API per impostazione predefinita. È possibile installare XmlRpcPlugin. Trac fornisce quindi l'accesso anonimo e autenticato a un'API tramite due protocolli: XML-RPC e JSON-RPC.

Una libreria di supporto per facilitare l'accesso è https://github.com/jakoch/PHPTracRPC