Heim > Fragen und Antworten > Hauptteil
Ich habe eine mit React Native erstellte App, die auf meinem lokalen Computer ausgeführt wird, und ich möchte Daten von meiner lokalen Symfony-API abrufen und anzeigen, die ausgeführt wird.
Der React Native-Code wird von meiner lokalen PC-IP und Symfony-Ports/-Routen bezogen:
constructor(props) { super(props); this.state = { isLoading: true, dataSource: [], } } componentDidMount() { return fetch('http://10.161.170.86:8000/api/hardwarePlacement') .then((response) => { console.log(response.ok); }) .then((response) => response.json()) .then((responseJson) => { console.log(response.ok); this.setState({ isLoading: false, dataSource: responseJson.hardwarePlacements, }) }) .catch((error) => { console.log(error) }); }
Die JSON-Daten, die ich von meiner Symfony-API erhalte, sind wie folgt, wenn ich sie über Postman oder direkt über den Browser erhalte:
[{"id":1,"name":"Bryggers","createdDate":{"date":"2023-02-08 15:14:12.000000","timezone_type":3,"timezone":"Europe\/Berlin"},"editedDate":{"date":"2023-02-14 13:57:07.000000","timezone_type":3,"timezone":"Europe\/Berlin"}},{"id":2,"name":"Stue","createdDate":{"date":"2023-02-08 21:52:46.000000","timezone_type":3,"timezone":"Europe\/Berlin"},"editedDate":{"date":"2023-02-08 21:52:46.000000","timezone_type":3,"timezone":"Europe\/Berlin"}},{"id":3,"name":"Stue","createdDate":{"date":"2023-02-14 13:57:10.000000","timezone_type":3,"timezone":"Europe\/Berlin"},"editedDate":{"date":"2023-02-14 13:57:10.000000","timezone_type":3,"timezone":"Europe\/Berlin"}}]
Der Fehler, den ich im Terminal erhalte, ist:
[TypeError: undefined is not an object (evaluating 'response.json')]
Wenn ich versuche, Daten von einer öffentlichen URL abzurufen, funktioniert es einwandfrei, nur wenn es Daten von einer lokalen Host-URL abruft, schlägt es fehl.
P粉3331862852023-09-14 11:29:53
从第一个then
返回
.then((response) => { console.log(response.ok); return response }) .then((response) => response.json())