2017-07-08 1 views
1

Ich versuche, Swagger in einer VM/Vagrant-Box einzurichten. Was ich getan habe, ist unten.Swagger-API kann nicht im Browser geöffnet werden

i. Port Forwarding Vagrantfile mit

dev.vm.network "forwarded_port", guest: 3000, host: 3000, host_ip: 
"127.0.0.1", auto_correct: true 

ii. Swagger Konfiguration in einer vagabundierenden Box

npm install -g swagger 
Create a new swagger project 
swagger project create hello-world 

Ich habe versucht, mit dem Befehl Swagger-Editor zu öffnen swagger project edit -p 3000 -s, die

Ab Swagger Editor gibt. Laufender Swagger Editor API Server. Sie können GET machen und PUT Anrufe http://127.0.0.1:3000/editor/spec

Scheint, wie alles perfekt ist, so besuchte Browser von lokalem Desktop (Windows), und besuchen http://localhost:3000/editor/spec die mir Diese Seite gibt nicht zu erreichen.

curl http://localhost:3000/editor/spec funktioniert gut in der VM/vagrant box.

Was falsch mache ich hier?

Antwort

1

Die Frage ist

Anrufe http://127.0.0.1:3000/editor/spec

so dass sie nicht zugänglich auf jedem Netzwerk-Schnittstelle andere als localhost.

Sie müssen dies ändern, um die App auf dem IP des Servers zu beginnen oder Sie können 0.0.0.0 (spezielle IP, so dass alle Schnittstellen darauf zugreifen können) verwenden

Sie müssen als

swagger project edit --host 0.0.0.0 -p 3000 -s 
laufen

(Siehe the CLI reference guide) - Dann können Sie von Ihrem Host zugreifen zu http://localhost:3000

NB: die andere Möglichkeit ist, eine statische IP entweder mit private network oder public network zuweisen; Starten Sie dann swagger project edit --host <static_ip_from_vagrantfile> -p 3000 -s und greifen Sie von Ihrem Host auf die statische IP zu. In diesem Fall müssen Sie keinen Port vom Gast zum Host weiterleiten.

+0

Ja, es funktioniert jetzt, aber nicht öffnen tatsächlichen Editor wie ein wenig Text. Weißt du, warum? – Deamon

+0

was du meinst "nur wie ein Text" - erhalten Sie nicht https://github.com/swagger-api/swagger-node/blob/master/docs/cli.md#swagger-project-edit-options- Verzeichnis ? vielleicht sollten Sie eine neue Frage mit den Details und tatsächlichen vs erwarteten Ergebnis erstellen –

+0

Können Sie bitte einen Blick auf es hier (https://stackoverflow.com/questions/45005086/swagger-editor-istn-opening-in-chrome-version -59-0-3071-115-official-build-6)? Das Gleiche in Windows funktioniert gut. Ich meine, ich kann das genaue Fenster dort sehen. Aber was ist falsch mit einer virtuellen Maschine mit vagrant? – Deamon

Verwandte Themen