Frage

Ich werde eine API für eine Web-App erstellen und bin daran interessiert, was die Leute als bewährte Methoden vorschlagen können.

Ich plane bereits, es versioniert zu machen (Version 1 kann nur bestimmte Aspekte des Systems steuern, Version 2 könnte mehr steuern, aber dies erfordert möglicherweise eine Änderung in der Art und Weise, wie die Authentifizierung durchgeführt wird, die mit Version 1 nicht kompatibel wäre), und das Die Authentifizierung unterscheidet sich vom standardmäßigen Benutzernamen/Passwort, mit dem sich Benutzer anmelden (wenn jemand ein bösartiges Tool verwendet, wird er dadurch nicht für einen vollständigen Identitätswechsel geöffnet, sondern nur für das, was die API zulässt).

Hat jemand weitere Ideen oder Beispiele für Websites mit besonders guten APIs, die Sie verwendet haben?

War es hilfreich?

Lösung

Lies das RESTful-Webdienste Buch, das Ihnen einen guten Überblick darüber gibt, wie Sie REST in der Praxis nutzen, und sich schnell genug einarbeiten kann, um jetzt mit etwas Selbstvertrauen loszulegen.Dies ist nützlicher als nur die Betrachtung einer vorhandenen API, da hier auch Designentscheidungen und Kompromisse erörtert werden.

Andere Tipps

1) Binden Sie die Versionsnummer direkt in die URL ein, anstatt sie als Parameter zu übergeben, da Sie so die Organisation Ihres API-Namespace bei jedem Versionswechsel völlig frei ändern können.

2) Halten Sie Ihre Regeln zum Umschreiben von URLs (falls vorhanden) so einfach/schlank wie möglich (aber nicht einfacher), während Sie Ihre URLs so schön wie möglich gestalten (aber nicht mehr).

3) Suchen Sie immer nach dem besten HTTP-Statuscode, den Sie für jede Antwort finden können (und vergessen Sie beispielsweise nicht 202 und 207).

4) Implementieren Sie eine faschistische Parametervalidierungslogik und informative Fehlermeldungen.

5) Verwenden Sie gegebenenfalls HTTP-Anforderungsheader anstelle von Parametern (z. B. Accept, damit Clients das gewünschte Datenformat der Antwort angeben können).

6) Organisieren Sie Ihre „Substantive“ so, dass die von verschiedenen Client-Zielgruppen verwendeten URLs in der Nähe des „Stammverzeichnisses“ Ihres URL-Baums getrennt sind (dies macht es bei Bedarf einfacher, unterschiedliche Authentifizierungsmechanismen für diese unterschiedlichen Zielgruppen durchzusetzen oder sogar zuzuordnen). verschiedene Teile Ihres URL-Baums auf verschiedene Server).

7) Wenn Sie normale Webseiten außerhalb derselben Domäne wie Ihre APIs bereitstellen und dieselben Authentifizierungsdaten verwenden, fordern Sie einen X-Requested-With-Header in Ihren API-Anfragen, um XSRF-Schwachstellen zu vermeiden.

Ich würde mir bewährte APIs ansehen:

  1. YouTube-API
  2. Twitter-API

Es gibt viele Diskussionen darüber, ob diese APIs „gut“ sind, aber ich denke, ihr Erfolg ist nachweisbar und sie sind alle einfach zu verwenden.

Verwenden AUSRUHEN.

Die RESTful-Webservices-Architektur ist einfach zu implementieren und nutzt die Stärken und Semantik von HTTP für den vorgesehenen Zweck.Es ist ressourcenorientiert, genau wie das Web selbst.

Amazon Web Services, Google und viele andere bieten REST-APIs für die Interaktion mit ihren Produkten an.

Verwenden Sie REST.

Informieren Sie sich über Standards für APIs oder kopieren Sie die Ideen von einem der beliebtesten.

Seien Sie vorsichtig bei der Authentifizierung von Benutzern.

Fangen Sie ganz, ganz einfach an.

Erstellen Sie eine Website, die Ihre API verwendet (auch wenn diese nicht nützlich ist), um zu überprüfen, ob alles funktioniert.Vielleicht könnten Sie eine mobile Version der Website erstellen oder etwas, das Sie dazu zwingt, die API intensiv zu nutzen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top