Esiste un metodo leggero per descrivere i servizi Web, simile a robots.txt o sitemap.xml?

6

Mi piacerebbe fornire un metodo molto leggero per descrivere i miei servizi web. Nessun WSDL, WADL o materiale complesso simile. Solo una mappatura dall'URL di base del servizio Web a una semplice descrizione che può essere rilevata e analizzata automaticamente. Fondamentalmente

  • Il nome del servizio
  • Un link ad alcuni documenti leggibili dall'uomo (facoltativo)
  • Forse un contatto indirizzo
  • Condizioni di utilizzo, pattern URL, ecc. sono meno necessari per semplificare.

Il meglio che ho trovato è Documenti Descrizione OpenSearch , ma prima potrebbe essere più semplice con testo normale file di configurazione e in secondo luogo non esiste uno standard su come collegare questi documenti di descrizione del servizio a servizi Web arbitrari (solo autodiscovery in ATOM / RSS e HTML).

Ho pensato di creare il mio formato personale e di fornirlo in modo simile a robots.txt :

$ curl http://example.org/services.txt

service: http://example.org/foobar
name: Foobar API
about: http://example.org/foobar-doc.html

service: http://example.org/some/unapi
name: Example ORG's unAPI

# additional fields, to be discussed
standard: http://unapi.info
pattern: ?id={id}&format={format}

Quindi, se conosci l'URL di base di un servizio, come http://example.org/some/unapi , puoi cercare almeno il nome nel file di descrizione del servizio.

Invece di definire il mio standard, tuttavia, vorrei sapere se esiste già qualcosa di simile da riutilizzare.

    
posta Jakob 18.04.2012 - 11:59
fonte

1 risposta

3

C'è uno standard, ma è chiamato WSDL.

Anche se lo standard WS * è scoraggiante e complesso nella sua portata, nella pratica è piuttosto semplice.

Esiste un set completo e completo di strumenti e implementazione sviluppati attorno a SOAP. Nella maggior parte dei casi tutto ciò che devi scrivere è lo stesso WSDL e l'effettivo servizio di business logic in Java, php, python C ++ o altro. Il tool e il motore SOAP fanno il resto - inclusa la risposta alle richieste di una descrizione del servizio web.

Non c'è davvero molto da fare nel definire il tuo standard in isolamento poiché è improbabile che qualcuno, a parte te stesso, lo userebbe.

Sebbene non sia ancora uno standard, la proposta JSON SMD potrebbe essere più a tuo piacimento. È molto più semplice di WSDL anche se descrive ancora l'interfaccia stessa piuttosto che la descrizione di livello superiore (dettagli di contatto, proprietà, ecc.) Che desideri.

    
risposta data 18.04.2012 - 12:45
fonte

Leggi altre domande sui tag