webpack-dev-server-proxy-doesnt-Arbeit
Möchte ich proxy /v1/* zu http://myserver.com, und hier ist mein Skript
JS:
devServer: {
historyApiFallBack: true,
//progress: true,
hot: true,
inline: true,
//https: true,
port: 8081,
contentBase: path.resolve(__dirname, 'public'),
proxy: {
'/v1/*': {
target: 'http://api.in.uprintf.com',
secure: false
//changeOrigin: true
}
}
},
aber es funktioniert nicht,
- Wo muss man die Konfiguration?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Update:
Dank @chimurai, Einstellung
changeOrigin: true
ist wichtig, damit es funktioniert.Unter
webpack-dev-server
übergibt alle proxy-Konfiguration zuhttp-proxy-middleware
von der Dokumentation. Es ist klar, die verwenden Sie, falls Sie möchten, auch tatsächlich erreicht werden mit/v1/**
Pfad:changeOrigin: true
changeOrigin: true/false, Default: false - changes the origin of the host header to the target URL
Ja, es hat funktioniert. Vielen Dank für deine Antwort!Stellen Sie sicher, dass Ihre Anfrage-url und port-matches, die Ihr webpack-dev-server ausgeführt wird. Also, wenn Sie Ihre api befindet sich unter der
http://localhost:5000
, und Ihr dev-server ausgeführt wirdhttp://localhost:8080
, stellen Sie sicher, dass alle Ihre Anfragen werden anhttp://localhost:8080
. Ihr bestes, um Ihre Anfragen zulocalhost:8080/api
(zur Vermeidung von Konflikten mit app-Routen) und benutzen Sie den Pfad neu schreiben, um die zu entfernen /api.Beispiel:
Webpack devserver proxy config:
Webpack dev-server läuft auf:
Gewünschte API-Endpunkt:
In Ihrer app, stellen Sie die Anfrage an:
http://localhost:8080/api/items
.Diese sollte Arbeit. Es scheint mir, dass alle der oben genannten Themen ergeben sich aus, der die Anfrage an die API-url und-port statt über den webpack dev-server-url und den port und den proxy und den Pfad umschreiben, leiten Sie die Anfrage an die API.
Dies funktioniert gut für mich.
//verwenden