A informação não esta sendo registrada no arquivo db.json. Já testei as soluções apresentas em diversos tópicos aqui do forum, mas mesmo assim não deram certo.
No começo esta tendo o erro de "SyntaxError: Unexpected token 'c', "content=Ol"... is not valid JSON", esse erro parou e acontecer depois que adicionei "headers: {'Content-Type': 'application/json'}" na minha função 'register'. Agora, mesmo não dando erro nenhum, a informação "Olá mundo!" não fica registrada.
main.dart
import 'package:flutter/material.dart';
import 'package:flutter_webapi/services/journal_service.dart';
import 'package:google_fonts/google_fonts.dart';
import 'screens/home_screen/home_screen.dart';
void main() {
runApp(const MyApp());
JournalService service = JournalService();
service.register("Olá mundo!");
service.get();
}
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Simple Journal',
debugShowCheckedModeBanner: false,
theme: ThemeData(
primarySwatch: Colors.grey,
appBarTheme: const AppBarTheme(
elevation: 0,
backgroundColor: Colors.black,
titleTextStyle: TextStyle(
color: Colors.white,
),
),
textTheme: GoogleFonts.bitterTextTheme()
),
darkTheme: ThemeData.dark(),
themeMode: ThemeMode.light,
initialRoute: "home",
routes: {
"home": (context) => const HomeScreen(),
},
);
}
}
journal_service.dart
import 'package:http/http.dart' as http;
class JournalService {
static const String url = "http://192.168.15.71:3000/";
static const String resource = "learnhttp/";
String getURL() {
return "$url$resource";
}
void register(String content) {
http.post(
Uri.parse(getURL()),
headers: {'Content-Type': 'application/json'},
body: {'content': content});
}
Future<String> get() async {
http.Response response = await http.get(Uri.parse(getURL()));
print(response.body);
return response.body;
}
}