Oumaima Sh
Oumaima Sh

Reputation: 59

SocketException: OS Error: Connection refused, errno = 111, address = 127.0.0.1, port = 47660

I'm trying to read data from json file but in vain this is the errors that I got , please could someone help me , Im using chopper too , I tried to work with jsonplaceholder and it works but when Im using my code it doesnt work , I just want to know the cause of that probleem
agence_api_service.chopper.dart

// GENERATED CODE - DO NOT MODIFY BY HAND

part of 'agence_api_service_chopper.dart';



class _$AgenceApiService extends AgenceApiService {
  _$AgenceApiService([ChopperClient client]) {
    if (client == null) return;
    this.client = client;
  }

  final definitionType = AgenceApiService;

  Future<Response> getAgences() {
    final $url = 'http://127.0.0.1:8080/agences';
    final $request = Request('GET', $url, client.baseUrl);
    return client.send<dynamic, dynamic>($request);
  }

  Future<Response> getAgence(int idb) {
    final $url = 'http://127.0.0.1:8080/agences/${idb}';
    final $request = Request('GET', $url, client.baseUrl);
    return client.send<dynamic, dynamic>($request);
  }

  Future<Response> postAgence(Map<String, dynamic> body) {
    final $url = 'http://127.0.0.1:8080/agences';
    final $body = body;
    final $request = Request('POST', $url, client.baseUrl, body: $body);
    return client.send<dynamic, dynamic>($request);
  }
}

and home_page.dart

class HomePage extends StatelessWidget {
  HomePage({Key key, this.title}) : super(key: key);
  final String title;
  @override
  Widget build(BuildContext context) {
    // TODO: implement build
    return new Scaffold(
      appBar: new AppBar(
        title: new Text("Drawer App"),
        elevation: defaultTargetPlatform == TargetPlatform.android ? 5.0 : 0.0,
      ),
      drawer: new Drawer(
          child: new ListView(
              children: <Widget>[
                DrawerHeader(
                    decoration: BoxDecoration(
                        gradient: LinearGradient(colors: <Color>[
                          Colors.deepOrange,
                          Colors.orangeAccent
                        ])
                    ),


                    child: Container(
                      child: Column(
                        children: <Widget>[
                          Material(
                            borderRadius: BorderRadius.all (Radius.circular(50.0)),
                            child: Padding(padding: EdgeInsets.all(8.0),
                              child: Image.asset("images/images.png",width: 100,height:100,),),
                          )
                        ],
                      ),

                    )
                ),

                new ListTile(
                  trailing: new Icon(Icons.account_circle),
                  title: new Text("My Account"),
                  onTap: () {
                    Navigator.of(context).pop();
                    //Navigator.of(context).pushNamed("/a");
                    Navigator.push(context, new MaterialPageRoute(
                        builder: (context) => new LoginApp())
                    );
                  },
                ),
                new ListTile(
                  title: new Text("Simulation"),
                  trailing: new Icon(Icons.format_list_bulleted),
                  onTap: ()
                  {
                    _buildBody(context);
                  },
                ),
                new Divider(),
                new ListTile(
                  title: new Text("Close"),
                  trailing: new Icon(Icons.close),
                  onTap: ()=> Navigator.of(context).pop(),
                )
              ]

          )
      ),
      body: _buildBody(context)


    );

  }

  FutureBuilder<Response> _buildBody(BuildContext context) {
    // FutureBuilder is perfect for easily building UI when awaiting a Future
    // Response is the type currently returned by all the methods of PostApiService
    return FutureBuilder<Response>(
      // In real apps, use some sort of state management (BLoC is cool)
      // to prevent duplicate requests when the UI rebuilds
      future: Provider.of<AgenceApiService>(context).getAgences(),
      builder: (context, snapshot) {
        if (snapshot.connectionState == ConnectionState.done) {
          if (snapshot.hasError) {
            return Center(
              child: Text(
                snapshot.error.toString(),
                textAlign: TextAlign.center,
                textScaleFactor: 1.3,
              ),
            );
          }

          final posts = snapshot.data.body;
          return _buildAgences(context, posts);
        } else {
          // Show a loading indicator while waiting for the posts
          return Center(
            child: CircularProgressIndicator(),
          );
        }
      },
    );
  }

  ListView _buildAgences(BuildContext context, List agences) {
    return ListView.builder(
      itemCount: agences.length,
      padding: EdgeInsets.all(8),
      itemBuilder: (context, index) {
        return Card(
          elevation: 4,
          child: ListTile(
            title: Text(
              agences[index].nom,
              style: TextStyle(fontWeight: FontWeight.bold),
            ),
            subtitle: Text(agences[index].lieu),
            onTap: () => _navigateToAgence(context, agences[index].idb),
          ),
        );
      },
    );
  }

  void _navigateToAgence(BuildContext context, int id) {
    Navigator.of(context).push(
      MaterialPageRoute(
        builder: (context) => SinglePostPage(postId: id),
      ),
    );
  }
}

the errors that I got

E/flutter ( 7843): [ERROR:flutter/lib/ui/ui_dart_state.cc(148)] Unhandled Exception: SocketException: OS Error: Connection refused, errno = 111, address = 127.0.0.1, port = 47660
E/flutter ( 7843): #0      IOClient.send (package:http/src/io_client.dart:33:23)
E/flutter ( 7843): <asynchronous suspension>
E/flutter ( 7843): #1      ChopperClient.send (package:chopper/src/base.dart:171:40)
E/flutter ( 7843): <asynchronous suspension>
E/flutter ( 7843): #2      _$AgenceApiService.getAgences (package:loanapp/data/agence_api_service.chopper.dart:20:19)
E/flutter ( 7843): #3      HomePage._buildBody (package:loanapp/home_page.dart:101:54)
E/flutter ( 7843): #4      HomePage.build.<anonymous closure> (package:loanapp/home_page.dart:75:21)
E/flutter ( 7843): #5      _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:635:14)
E/flutter ( 7843): #6      _InkResponseState.build.<anonymous closure> (package:flutter/src/material/ink_well.dart:711:32)
E/flutter ( 7843): #7      GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:182:24)
E/flutter ( 7843): #8      TapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:365:11)
E/flutter ( 7843): #9      TapGestureRecognizer.acceptGesture (package:flutter/src/gestures/tap.dart:312:7)
E/flutter ( 7843): #10     GestureArenaManager.sweep (package:flutter/src/gestures/arena.dart:156:27)
E/flutter ( 7843): #11     _WidgetsFlutterBinding&BindingBase&GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:222:20)
E/flutter ( 7843): #12     _WidgetsFlutterBinding&BindingBase&GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:198:22)
E/flutter ( 7843): #13     _WidgetsFlutterBinding&BindingBase&GestureBinding._handlePointerEvent (package:flutter/src/gestures/binding.dart:156:7)
E/flutter ( 7843): #14     _WidgetsFlutterBinding&BindingBase&GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:102:7)
E/flutter ( 7843): #15     _WidgetsFlutterBinding&BindingBase&GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:86:7)
E/flutter ( 7843): #16     _rootRunUnary (dart:async/zone.dart:1136:13)
E/flutter ( 7843): #17     _CustomZone.runUnary (dart:async/zone.dart:1029:19)
E/flutter ( 7843): #18     _CustomZone.runUnaryGuarded (dart:async/zone.dart:931:7)
E/flutter ( 7843): #19     _invoke1 (dart:ui/hooks.dart:250:10)
E/flutter ( 7843): #20     _dispatchPointerDataPacket (dart:ui/hooks.dart:159:5)
E/flutter ( 7843): 
E/flutter ( 7843): [ERROR:flutter/lib/ui/ui_dart_state.cc(148)] Unhandled Exception: SocketException: OS Error: Connection refused, errno = 111, address = 127.0.0.1, port = 47662
E/flutter ( 7843): #0      IOClient.send (package:http/src/io_client.dart:33:23)
E/flutter ( 7843): <asynchronous suspension>
E/flutter ( 7843): #1      ChopperClient.send (package:chopper/src/base.dart:171:40)
E/flutter ( 7843): <asynchronous suspension>
E/flutter ( 7843): #2      _$AgenceApiService.getAgences (package:loanapp/data/agence_api_service.chopper.dart:20:19)
E/flutter ( 7843): #3      HomePage._buildBody (package:loanapp/home_page.dart:101:54)
E/flutter ( 7843): #4      HomePage.build.<anonymous closure> (package:loanapp/home_page.dart:75:21)
E/flutter ( 7843): #5      _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:635:14)
E/flutter ( 7843): #6      _InkResponseState.build.<anonymous closure> (package:flutter/src/material/ink_well.dart:711:32)
E/flutter ( 7843): #7      GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:182:24)
E/flutter ( 7843): #8      TapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:365:11)
E/flutter ( 7843): #9      TapGestureRecognizer.acceptGesture (package:flutter/src/gestures/tap.dart:312:7)
E/flutter ( 7843): #10     GestureArenaManager.sweep (package:flutter/src/gestures/arena.dart:156:27)
E/flutter ( 7843): #11     _WidgetsFlutterBinding&BindingBase&GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:222:20)
E/flutter ( 7843): #12     _WidgetsFlutterBinding&BindingBase&GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:198:22)
E/flutter ( 7843): #13     _WidgetsFlutterBinding&BindingBase&GestureBinding._handlePointerEvent (package:flutter/src/gestures/binding.dart:156:7)
E/flutter ( 7843): #14     _WidgetsFlutterBinding&BindingBase&GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:102:7)
E/flutter ( 7843): #15     _WidgetsFlutterBinding&BindingBase&GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:86:7)
E/flutter ( 7843): #16     _rootRunUnary (dart:async/zone.dart:1136:13)
E/flutter ( 7843): #17     _CustomZone.runUnary (dart:async/zone.dart:1029:19)
E/flutter ( 7843): #18     _CustomZone.runUnaryGuarded (dart:async/zone.dart:931:7)
E/flutter ( 7843): #19     _invoke1 (dart:ui/hooks.dart:250:10)
E/flutter ( 7843): #20     _dispatchPointerDataPacket (dart:ui/hooks.dart:159:5)

Upvotes: 0

Views: 6335

Answers (3)

Lahiru Kumara
Lahiru Kumara

Reputation: 437

change 127.0. 0.1(or localhost) to your IPV4 address.

To find IPV4 address. Open a command prompt and use "ipconfig" command. As bellow. enter image description here

Upvotes: 1

Kizzo
Kizzo

Reputation: 21

If you're using django as backend, first run the server as "python manage.py runserver 0.0.0.0:8000". Then pass your local ip-address:8000 in the url in flutter, you can find your local ip-address by typing "ifconfig" in the terminal for macOs and linux or ipconfig in windows.

Upvotes: 2

Kevin Genus
Kevin Genus

Reputation: 290

TLDR, use 10.0.2.2

Applications running in the Android emulator can connect to local HTTP web services via the 10.0.2.2 address, which is an alias to your host loopback interface (127.0. 0.1 on your development machine).

Upvotes: 3

Related Questions