2017-03-21 2 views
0

this tutorial Nach Ich habe eine Anwendung erstellt mit Servern auf den Ports 3000 und 3001. hörenBerufung Fetch Von reagieren (mit Optionen)

Wenn ich richtig verstehe, meine Anwendung reagiert auf Port 3000 und verwendet den Server auf Port 3001 als Proxy, um API-Aufrufe an Aut0 zu senden.

Momentan kann ich erfolgreich eine Abrufanforderung von 3000 zu 3001 durchführen, aber das Problem ist, dass ich keine Optionen weitergeben kann.

Fetch (URL) funktioniert ohne Optionen, aber ich würde Variablen aus Abfrageparameter ziehen müssen.

Fetch (URL, Optionen) funktioniert nicht. Es erscheint manchmal als "Status = abgebrochen" in Chrome Netzwerk Registerkarte. Andere Male (scheinbar zufällig) zeigt es stattdessen eine 404, und manchmal erscheint die Anfrage nicht einmal in der Netzwerk-Registerkarte. In jedem Fall, wenn ich Optionen übergebe, wird die API nicht aufgerufen und die Log-Anweisungen, die sofort in der App.get() des Servers platziert werden, werden nicht ausgelöst.

Ich habe über hundert verschiedene Möglichkeiten versucht, um das Optionsobjekt zu formatieren, aber ich denke, das ist das Problem. Ich habe auch versucht, CORS auf dem 3001 Server zu aktivieren, aber das schien nicht zu helfen.

Ich würde wirklich jede Rückmeldung oder einen Rat zu diesem Thema schätzen. Vielen Dank!

+1

ich vermute, dass Ihr Mock-Server nicht eingerichtet ist korrekt ausgeführt . Wenn Sie den Mock-Server anpingen oder einen POSTMAN-Aufruf ausführen, gibt es dann irgendwelche Daten zurück? – Karis

+0

Sie hatten Recht, mein Server wurde nicht richtig eingerichtet. Ich benutzte app.get() und ich denke, GET würde nie einen Körper in der Anfrage haben. Als ich es in app.post änderte, funktionierte es. – cstoddart

Antwort

0

Ein Kollegen Coder aus der React-Support-Community half mir zu entdecken: 1) Ich habe nicht verwendet event.preventDefault(); und dies verursacht wurde, den Status = abgebrochene Fehler

2) Mein Server wurde mit app.get eingerichtet(), wenn es zu app.post benötigt()