2010-02-21 20 views
7

Sé que hay un complemento xmlrpc para trac. Pero yo no soy mi sitio de búsqueda ni tengo derechos de administrador. Solo tengo una cuenta de usuario normal con privilegios limitados.¿Trac tiene API remota?

Además del bajo nivel obvio de hacer las cosas (enviar solicitudes emulando el navegador web), ¿hay una mejor manera de hacerlo?

Estoy interesado principalmente en éstos:

  • Ver página wiki
  • página de edición wiki
  • Enviar nuevo billete
  • Ver Ticket
  • Añadir comentario acerca de la compra de entradas

Respuesta

4

Si observa las "pruebas funcionales" en la fuente de Trac, encontrará que tenemos código que ejerce Trac usando twill. Es posible que sea un punto de partida útil para hacer este tipo de cosas.

0

Parece que la única manera de hacer esto sería emular el navegador.

+0

Me interesaría saber qué quiere decir con "emular navegador" ya que no estoy familiarizado con lo que usted se refiere. – RjOllos

+0

Debería recopilar los nombres exactos de los campos del formulario, luego forjar una solicitud POST utilizando esos campos (incluidos los ocultos). Luego, la página html vuelve y necesitarás analizarla para obtener la información necesaria. No muy elegante. Se llama webscraping. – Kugel

0

Trac no proporciona una API por defecto. Puede instalar el XmlRpcPlugin. Trac proporciona acceso anónimo y autenticado a una API a través de dos protocolos: XML-RPC y JSON-RPC.

Una biblioteca de ayuda para facilitar el acceso es https://github.com/jakoch/PHPTracRPC