Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Wenn Sie Ihre Anwendung in Clouddienste integrieren, besteht eine der Herausforderungen, mit denen Sie möglicherweise konfrontiert sind, darin zu verstehen, wie der Clouddienst mit den von ihr genutzten APIs interagiert. Die Möglichkeit, API-Anforderungen zu prüfen, ist besonders wichtig, wenn Sie Probleme beheben oder wenn Sie versuchen, zu verstehen, wie der Clouddienst funktioniert. In der Regel ist es schwierig, da Sie keinen Zugriff auf die Laufzeit des Clouddiensts und möglicherweise auch keinen Zugriff auf die Überwachungstools für die Cloud-API haben. Mithilfe von Dev Proxy und Entwicklertunneln können Sie die API-Anforderungen prüfen, die Clouddienste für Cloud-APIs ausstellen.
Wichtig
Bevor Sie fortfahren, installieren Sie Entwicklertunnel und konfigurieren Sie das Tool für die Verwendung.
So rufen Clouddienste Cloud-APIs auf
Wenn Sie Ihre Anwendung in Clouddienste integrieren, ruft der Clouddienst Ihre API in der Cloud auf. Das folgende Diagramm veranschaulicht dieses Szenario:
Um API-Anforderungen zu prüfen, die der Clouddienst ausgibt, benötigen Sie Zugriff auf die Überwachungstools für die Cloud-API. Häufig haben Sie keinen Zugriff auf diese Tools. Sie können diese Einschränkung umgehen, indem Sie eine Stagingumgebung verwenden. Es ist jedoch zeitaufwändig, eine Stagingumgebung einzurichten und aufrechtzuerhalten. Wenn Sie nicht die besitzende Person der Cloud-API sind, können Sie möglicherweise überhaupt keine Stagingumgebung einrichten.
Überprüfen von API-Anforderungen mithilfe von Dev-Proxy- und Entwicklertunneln
Mithilfe von Dev Proxy und Entwicklertunneln können Sie die API-Anforderungen überprüfen, die der Clouddienst für die Cloud-API ausgibt.
Anstatt die Cloud-API direkt aufzurufen, konfigurieren Sie den Clouddienst, um den Entwicklertunnel aufzurufen, den Sie auf Ihrem lokalen Computer (1) ausführen. Sie konfigurieren den Entwicklertunnel für die Verwendung eines Hostheaders, den Dev Proxy abfängt. Jedes Mal, wenn der Clouddienst den Entwicklertunnel aufruft, übergibt er die Anforderung an Dev Proxy, der ihn abfängt (2). Mithilfe des Dev Proxys RewritePlugin ändern Sie die URL der abgefangenen Anforderung und leiten sie an die Cloud-API (3) weiter. Die Cloud-API verarbeitet die Anforderung und gibt eine Antwort an Dev Proxy (4) zurück. Dev Proxy übergibt die Antwort an den Entwicklertunnel (5), der sie an den Clouddienst weiterleitet (6). Da die Anforderung über Ihren lokalen Computer weitergeleitet wird, können Sie deren Informationen überprüfen, einschließlich URL, Header und Textkörper sowie der Antwort aus der Cloud-API.
Szenario
Angenommen, Sie möchten API-Anforderungen prüfen, die ein Clouddienst an die Demo-JSONPlaceholder-API ausgibt, die sich unter https://jsonplaceholder.typicode.com befindet. Durch die Kombination von Dev Proxy und Entwicklertunneln können Sie die Anforderungen abfangen und ihre Informationen überprüfen.
Sie können die Anforderungen entweder mithilfe von Tools für die Überprüfung von Entwicklungstunnels oder mithilfe des Dev Proxy DevToolsPlugin überprüfen. Beide Tools verwenden Chrome Dev Tools, um Informationen zu abgefangenen Anforderungen und Antworten anzuzeigen. Wenn Sie die Tools für die Überprüfungen von Entwicklertunneln verwenden, wird die URL des Entwicklungstunnels als Anforderungs-URL angezeigt. Wenn Sie das Dev Proxy DevToolsPlugin verwenden, sehen Sie im Vergleich dazu, wie Dev Proxy die Anforderung abfängt, indem Sie entweder die lokale oder die umgeschriebene URL verwenden.
Überprüfen von API-Anforderungen mithilfe von Dev Proxy, Entwicklertunneln und Tools zur Überprüfung von Entwicklertunneln
Konfigurieren von Dev Proxy zum Abfangen von Anforderungen an
https://jsonplaceholder.typicode.comundhttp://jsonplaceholder.typicode.local:{ "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v1.0.0/rc.schema.json", "plugins": [ { "name": "RewritePlugin", "enabled": true, "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll", "configSection": "rewritePlugin" } ], "urlsToWatch": [ "https://jsonplaceholder.typicode.com/*", "http://jsonplaceholder.typicode.local/*" ], "rewritePlugin": { "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v1.0.0/rewriteplugin.schema.json", "rewritesFile": "devproxy-rewrites.json" }, "logLevel": "information", "newVersionNotification": "stable", "showSkipMessages": true }Die Konfigurationsdatei verwendet RewritePlugin, um die URL der abgefangenen Anforderungen umzuschreiben. Außerdem wird Dev Proxy so konfiguriert, dass Anforderungen an die URLs
https://jsonplaceholder.typicode.comundhttp://jsonplaceholder.typicode.localabgefangen werden.Hinweis
Obwohl es nicht erforderlich ist, eine
.local-Domäne zu verwenden, empfiehlt es sich, zwischen den tatsächlichen und abgefangenen Anforderungen zu unterscheiden. Beachten Sie außerdem, dass Sie für die.local-Domäne das HTTP-Protokoll anstelle von HTTPS verwenden. Entwicklertunnel unterstützen HTTPS nicht für Routinganforderungen an benutzerdefinierte Hostheader auf Ihrem lokalen Computer, weshalb Sie HTTP verwenden müssen.Erstellen Sie eine Umschreibungsdatei mit dem Namen
devproxy-rewrites.json, die die URL der abgefangenen Anforderungen ändert:{ "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v1.0.0/rewriteplugin.rewritesfile.schema.json", "rewrites": [ { "in": { "url": "^http://jsonplaceholder.typicode.local(.*)" }, "out": { "url": "https://jsonplaceholder.typicode.com$1" } } ] }Die Umschreibungsdatei ändert die URL der abgefangenen Anforderungen von
http://jsonplaceholder.typicode.localinhttps://jsonplaceholder.typicode.com.Starten Sie Dev Proxy, indem Sie in der Befehlszeile
devproxyausführen.Starten Sie den Entwicklertunnel, indem Sie in der Befehlszeile
devtunnel host --host-header jsonplaceholder.typicode.local --port-numbers 8000 --allow-anonymousausführen.Mit diesem Befehl öffnen Sie einen neuen Entwicklungstunnel auf Ihrem Computer. Sie ordnen ihn dem Port 8000 zu, an dem Dev Proxy auf eingehende Anforderungen lauscht. Sie geben auch den Hostheader an, den Dev Proxy abfangen soll.
Beachten Sie die URL des Entwicklertunnels, den Sie zum Konfigurieren des Clouddiensts verwenden können, um Ihren lokalen Computer aufzurufen, z. B.
https://tunnel_id-8000.euw.devtunnels.ms.Öffnen Sie in einem Webbrowser die URL für die Entwicklertunnelüberprüfung, z. B.
https://tunnel_id-8000-inspect.euw.devtunnels.ms.Simulieren Sie einen Clouddienst, der die Cloud-API aufruft, indem Sie die Entwicklertunnel-URL verwenden, indem Sie in der Befehlszeile
curl https://tunnel_id-8000.euw.devtunnels.ms/posts/1ausführen.Hinweis
Beachten Sie, dass der Hostname der URL des Entwicklertunnels auf Ihrem Computer entspricht. Der Pfad entspricht dem Pfad der API, die Sie überprüfen möchten.
Beachten Sie, wie Dev Proxy die Anforderung abfängt und an die Cloud-API weiterleitet und schließlich die Antwort an den Client zurückgibt.
Beachten Sie im Webbrowser die Informationen über die abgefangene Anforderung und die Antwort von der Cloud-API.
Hinweis
Beachten Sie, dass die URL der aufgezeichneten Anforderung die URL des Entiwcklertunnels ist. Der aufgezeichnete Hostheader ist der Hostheader, den Dev Proxy abfängt.
Schließen Sie den Entwicklertunnel und beenden Sie Dev Proxy, indem Sie in ihren jeweiligen Sitzungen in der Befehlszeile STRG+C drücken.
Überprüfen von API-Anforderungen mithilfe von Dev Proxy und DevToolsPlugin
Eine weitere Möglichkeit zum Überprüfen der API-Anforderungen, die der Clouddienst ausgibt, ist die Verwendung des Dev Proxy DevToolsPlugin. Der Unterschied zwischen der Verwendung des DevToolsPlugin und Tools für die Überprüfung von Entwicklertunneln besteht darin, dass DevToolsPlugin zeigt, wie Dev Proxy die Anforderung abfängt, entweder mithilfe der lokalen oder der umgeschriebenen URL.
Konfigurieren von Dev Proxy für die Verwendung des DevToolsPlugin zum Überprüfen von API-Anforderungen mithilfe der abgefangenen URL
Zunächst konfigurieren wir Dev Proxy für die Prüfung von Cloud-API-Anforderungen. Wir konfigurieren das DevToolsPlugin so, dass die Informationen zu der URL angezeigt werden, bevor Dev Proxy sie umschreibt.
Aktualisieren Sie die Dev Proxy-Konfigurationsdatei für die Verwendung des DevToolsPlugin:
{ "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v1.0.0/rc.schema.json", "plugins": [ { "name": "DevToolsPlugin", "enabled": true, "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll" }, { "name": "RewritePlugin", "enabled": true, "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll", "configSection": "rewritePlugin" } ], "urlsToWatch": [ "https://jsonplaceholder.typicode.com/*", "http://jsonplaceholder.typicode.local/*" ], "rewritePlugin": { "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v1.0.0/rewriteplugin.schema.json", "rewritesFile": "devproxy-rewrites.json" }, "logLevel": "information", "newVersionNotification": "stable", "showSkipMessages": true }Hinweis
Beachten Sie, dass wir das DevToolsPlugin vor dem RewritePlugin hinzufügen. Indem Sie das DevToolsPlugin zuerst hinzufügen werden die Informationen zu der abgefangenen Anforderung angezeigt, bevor sie umgeschrieben wird.
Starten Sie Dev Proxy, indem Sie in der Befehlszeile
devproxyausführen. Beachten Sie, dass Dev Proxy ein Webbrowserfenster mit sichtbaren Chrome Dev Tools öffnet.Starten Sie den Entwicklertunnel, indem Sie in der Befehlszeile
devtunnel host --host-header jsonplaceholder.typicode.local --port-numbers 8000 --allow-anonymousausführen.Simulieren Sie einen Clouddienst, der die Cloud-API aufruft, indem Sie die Entwicklertunnel-URL verwenden, indem Sie in der Befehlszeile
curl https://tunnel_id-8000.euw.devtunnels.ms/posts/1ausführen.Beachten Sie im Webbrowser mit Chrome Dev Tools die Informationen zur abgefangenen Anforderung und die Antwort von der Cloud-API.
Hinweis
Beachten Sie, dass die URL der aufgezeichneten Anforderung die URL der Cloud-API ist. Der aufgezeichnete Hostheader ist der Hostheader, den Dev Proxy abfängt.
Schließen Sie den Entwicklertunnel und beenden Sie Dev Proxy, indem Sie in ihren jeweiligen Sitzungen in der Befehlszeile STRG+C drücken.
Konfigurieren von Dev Proxy für die Verwendung des DevToolsPlugin zum Überprüfen von API-Anforderungen mithilfe der umgeschriebenen URL
Als Nächstes aktualisieren wir die Dev Proxy-Konfiguration, um die Informationen zur umgeschriebenen URL anzuzeigen.
Aktualisieren Sie die Dev Proxy-Konfigurationsdatei, indem Sie das DevToolsPlugin hinter das RewritePlugin verschieben:
{ "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v1.0.0/rc.schema.json", "plugins": [ { "name": "RewritePlugin", "enabled": true, "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll", "configSection": "rewritePlugin" }, { "name": "DevToolsPlugin", "enabled": true, "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll" } ], "urlsToWatch": [ "https://jsonplaceholder.typicode.com/*", "http://jsonplaceholder.typicode.local/*" ], "rewritePlugin": { "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v1.0.0/rewriteplugin.schema.json", "rewritesFile": "devproxy-rewrites.json" }, "logLevel": "information", "newVersionNotification": "stable", "showSkipMessages": true }Starten Sie Dev Proxy, indem Sie in der Befehlszeile
devproxyausführen. Beachten Sie, dass Dev Proxy ein Webbrowserfenster mit sichtbaren Chrome Dev Tools öffnet.Starten Sie den Entwicklertunnel, indem Sie in der Befehlszeile
devtunnel host --host-header jsonplaceholder.typicode.local --port-numbers 8000 --allow-anonymousausführen.Simulieren Sie einen Clouddienst, der die Cloud-API aufruft, indem Sie die Entwicklertunnel-URL verwenden, indem Sie in der Befehlszeile
curl https://tunnel_id-8000.euw.devtunnels.ms/posts/1ausführen.Beachten Sie im Webbrowser mit Chrome Dev Tools die Informationen zur abgefangenen Anforderung und die Antwort von der Cloud-API.
Hinweis
Beachten Sie, dass sowohl die aufgezeichnete Anforderungs-URL als auch der Hostheader die URL der Cloud-API anzeigen.
Schließen Sie den Entwicklertunnel und beenden Sie Dev Proxy, indem Sie in ihren jeweiligen Sitzungen in der Befehlszeile STRG+C drücken.
Zusammenfassung
Mithilfe von Dev Proxy und Entwicklertunneln können Sie die API-Anforderungen prüfen, die Clouddienste für Cloud-APIs ausstellen. Sie können entweder Tools für die Überprüfung von Entwicklertunneln oder das Dev Proxy DevToolsPlugin verwenden, um die Anforderungen zu prüfen. Beide Tools zeigen die Informationen zu den abgefangenen Anforderungen, einschließlich URL, Header und Text, sowie die Antwort der Cloud-API. Mithilfe von Dev Proxy und Entwicklertunneln können Sie besser verstehen, wie Clouddienste mit Cloud-APIs interagieren und Probleme effektiver beheben.
Nächste Schritte
Erfahren Sie mehr über das RewritePlugin.







