2017-02-10 3 views
0

Ich schreibe einen Rails-Server, die REST-API-Schnittstelle bieten.Konvertierung von nicht Rest zu Ruhe api

Nach vielen Tagen, ich begann es, eine neue Anforderung kam: Es ist notwendig, eine Legacy Android App-Client, die Anrufe in einer nicht-REST-Weise, so vollständig inkompatibel mit dem REST-Server zu unterstützen.

Ich dachte, dass ich einen neuen Server schreiben könnte, der die Anrufe vom Client zum REST-Server konvertiert, wäre es ein http-Server, der andere http-Aufrufe macht.

Die Fragen sind, was ist der technische Name für diese Art von "Konverter", den ich gerne bauen würde? (so kann ich besser googlen), sehen Sie andere mögliche Lösungen oder klingt es machbar?

+0

Sie wollen also einen Proxy zwischen einem nicht erholsamen Client und einem erholsamen Service, nehme ich an? – DaSourcerer

Antwort

2

Der Ansatz, einen Proxy dazwischen zu haben, scheint ein akzeptabler Weg zu sein, mit der Legacy-Support-Anforderung umzugehen. Darüber hinaus wird die REST-API von allen Einflüssen der Architekturauswahl in der alten API isoliert.

Der Nachteil eines solchen Wrappers ist jedoch, dass er Sie wahrscheinlich bei Entscheidungen, die Sie in Zukunft treffen können, einschränken wird. Da Sie bei jeder Änderung der REST-API das Vermächtnis entsprechend anpassen müssen, was jedes Mal einen doppelten Aufwand bedeutet.

Außerdem müssen Sie wahrscheinlich mit der Proxy-Sicherheit für die Lagacy-API über die REST-API umgehen, was zu nicht offensichtlichen Fallstricken führen kann.

Mein Vorschlag ist, die veraltete API zu portieren und sie so zu verwenden, wie sie ist, bis sie abgesetzt wird, es sei denn, das oben Genannte funktioniert nicht für Ihre Situation.