Flutter Data from API?

Hey, will Daten von meiner erstellten API ausgeben in meiner App.

Code:

fetchData() async {
    final response = await http.get(Uri.parse('http://localhost/list.json'));
    return json.decode(response.body);
  }

FutureBuilder(
            future: fetchData(),
            builder: (BuildContext context, AsyncSnapshot snapshot){
              if(snapshot.hasError){
                return Center(
                  child:Text("Error"),
                );
              }
              if(snapshot.hasData){
                return ListView.builder(
                  itemCount: snapshot.data.length, 
                    itemBuilder: (BuildContext context, int index){
                  return Row(
                    children: [
                      Expanded(
                        child: Container(
                        child: Column(
                          children: [
                            Text(snapshot.data[index]['id']),
                            SizedBox(height: 10,),
                            Text(snapshot.data[index]['name']),
                            
                          ],
                        ),
                        ),
                      ),
                    ],
                  );
                });
              }
              return Center(child: CircularProgressIndicator(),);
            },
          ),

Jedoch bekomm ich als Ausgabe "Error". Woran kann das liegen? Die API kann ich mit Postmann abfragen.

App, Technik, programmieren, iOS, Android, Dart, Entwicklung, MySQL, Programmiersprache, Rest, Softwareentwicklung, API, localhost, app entwicklung, Flutter
Daten senden mit fetch?

Hallo,

ich will mit der Fetch API Daten senden und abrufen. Aber wen ich dies tue, kommt ein Fehler:

POST http://127.0.0.1:5500/api net::ERR_ABORTED 405 (Method Not Allowed)

Ich weiß gar nicht, wie ich diesen Fehler beheben soll. Ich habe dazu auch nichts hilfreiches bis jetzt gefunden.

Mein Ziel ist es, Daten mit Javascript an einen Server (für den Anfang an localhost) zu senden und diese dann von einem weiteren localhost-Server abrufen.

Das ist meine Index.html:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <section id="control-center">
        <button id="get-btn">Get Data</button>
        <button id="post-btn" onclick="test()">Post Data</button>
        <script>
            function test(){
                const data = {"name": "somename"}
                const options = {
                    method: "POST",
                    headers: {'Content-Type': 'application/json'},
                    body: JSON.stringify(data)
                }
                fetch('/api', options)
            }
        </script>
    </section>
</body>
</html>

Und das ist meine app.js:

const express = require('express')
const app = express()
app.listen(3000, () => console.log('3000'))
app.use(express.static('public'))

app.post('/api', (req, res) => {
    console.log(req)
})

Wenn jemand eine bessere Methode hat, Daten an einen Server zu senden, dann würde ich diese auch mal gerne probieren.

Webseite, JavaScript, Programmiersprache, Webentwicklung, node.js
Wie kriegt man Berufserfahrung mit 15?

Hi. Also ich denke, was das Programmieren angeht, bin ich auf Fortgeschrittenen Niveau. Ich hab:

  • Einen HTTP-Server in Python programmiert (Nur mit Built-In Libraries, direkt mit Sockets. Und PHP ist auch implementiert, zumindest das meiste).
  • Meine eigene Wallpaper Engine in C# und Python geschrieben.
  • Viele Algorithmen auf EntwicklerHeld gemacht
  • Viele Landing Pages, Chat-Seiten, Foren und Mobile Apps Programmiert (Mobile Apps Backend immer mit PHP oder Python, Frontend mit HTML, CSS und JS)

Ich kenne und hab auch wissen, in den Folgenden Libraries (Python):

  • BeatifulSoup
  • Sockets
  • Threading/Multiprocessing
  • NumPy
  • pywin32 (Tiefe Kenntnisse in die WinAPI)
  • PyWebView
  • Tkinter
  • Pythonnet
  • PyAutoGUI
  • JSON
  • PIL
  • pystray
  • os/sys

Ich verstehe das HTTP-Protokoll und die REST-API, beide auch relativ gut. Ich hab Basic Wissen in C/C++ (beschäftige mich zurzeit damit aber noch), etwas Fortgeschrittenere Kenntnisse in C# und Fortgeschrittene Kenntnisse in HTML, CSS, JavaScript und Java. Java hab ich vor allem für die SpigotAPI oft verwendet. Auf GitHub hab ich lange nichts mehr hochgeladen, mein Syntax hat sich stark verändert. Aber paar Projekte hab ich dort trotzdem: https://github.com/Fidode07

Ich denke mein Wissen reicht, ob zumindest mal in ein paar Praktikums reinzuschnuppern. Also Geld verdienen, geht anscheinend nicht (Wegen meinem Alter .___.). Aber ich will wenigstens etwas Erfahrung sammeln. Ich weiß aber nicht, wo ich am besten Anfang soll zu suchen. Hat da jemand irgendwelche richtigen Tipps. Also nicht sowas wie "Ja, such dir halt Firmen in deiner Nähe". Das hilft nicht, ich will wissen WIE ich suche.

Am liebsten mach ich btw. Backend mit Python und C#. Danke im Vorraus und lg.

Arbeit, HTML, Webseite, Programmierer, Java, Jugendliche, JavaScript, Cplusplus, C Sharp, developer, Jungs, Programmiersprache, Python
Könnt ihr mir bei dieser Java-Aufgabe helfen?
Einige Methoden werden in allen Implementierungen gleich sein. Erstellen Sie eine abstrakte Klasse BasisRennbahn, die diese Methoden enthält und leiten Sie dann von dieser Klasse ab. Welche Methoden können Sie ohne Probleme in die Basisklasse verschieben? Warum gibt es bei manchen Methoden Probleme?
public class Rennauto {
    private final String name;
    private final String typ;
    private final int max;
    private int strecke;    
 
     * @param name Name der Fahrerin oder des Fahrers
     * @param typ Fahrzeugmarke und Typ
     * @param max maximale Geschwindigkeit
  
    public Rennauto(String name, String typ, int max) {
        this.name = name;
        this.typ = typ;
        this.max = max;
    }
    
     * Fährt mit zufälliger Geschwindigkeit eine Strecke.
    
    public void fahre() {
        strecke += Math.random() * max;
    }    

     * Liefert die aktuelle Position des Rennautos.
    
    public int getStrecke() {
        return strecke;
    }


    @Override
    public String toString() {
        return name + " in " + typ + " (" + strecke + ")";
    }
  public interface Rennbahn {

     * Setzt die Laenge der Rennbahn. Typische Werte werden zwischen 100 und 1000 liegen.
   
  void setzeLaenge(int laenge);


     * Setzt ein Rennauto auf eine Spur, falls möglich
     * @param auto das Auto, das auf die Rennbahn gesetzt wird.  Dieses darf nicht null sein!
     * @return true, falls das Auto auf die Bahn gesetzt werden konnte. Falsch, wenn das Rennauto bereits auf der Fahrbahn ist oder keine Spur (je nach
     *Implementierung unterschiedlich viele) mehr frei ist.

    boolean setzeAufSpur(Rennauto auto);


     * Simuliert einen Zeitabschnitt, i.A. wird hier einfach nur
     * {@link Rennauto#fahre()} für alle am Rennen beteiligten Autos aufgerufen.
    
    void simuliereZeitabschnitt();


     * Liefert den Sieger. Falls mehrere Autos im Ziel sind, gewinnt das Auto, das am weitesten gefahren ist.
     * Wenn Autos exakt gleich weit gefahren sind, gewinnt eines von beiden (welches ist nicht genauer spezifiziert).
     * @return Sieger oder null, falls es keinen Sieger gibt.
  
    Rennauto liefereSieger();


         * Führt das Rennen mittels {@link #simuliereZeitabschnitt()} und
     * {@link #liefereSieger()} durch. Die Methode gibt nichts zurück, der Sieger kann über {@link #liefereSieger()} ermittelt werden.
     * @throws IllegalStateException, falls die Länge nicht gesetzt wurde oder keine
     * Autos auf der Rennbahn stehen.
   
 void rennenDurchfuehren();


     * Entfernt ein Rennauto von der Rennbahn und gibt die Spur wieder frei. 
     * @param auto das zu entfernende Rennauto
    
    void entferne(Rennauto auto);
    
  
     * Prüft, ob wenigstens ein Auto auf der Rennbahn steht.
     * @return false, falls wenigstens ein Auto auf der Rennbahn steht, sonst true
    
    boolean istLeer();
programmieren, Java, Informatik, Programmiersprache, Softwareentwicklung, Wirtschaftsinformatik, Wirtschaftsmathematik, Wirtschaftswissenschaft, technische informatik, angewandte Informatik

Meistgelesene Beiträge zum Thema Programmiersprache