首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在flutter中出现Http post请求错误,但在邮递员中工作

在flutter中出现Http post请求错误,但在邮递员中工作
EN

Stack Overflow用户
提问于 2021-10-14 12:11:56
回答 2查看 45关注 0票数 0

我正在学习使用mongodb atlas进行登录注册。但我正面临着一些问题。当我发送http post请求在模拟器中创建新用户,它不工作,并抛出一些错误。但同样的事情也适用于邮递员。我可以很容易地在postman中创建新用户。有人能帮我解决这个问题吗?我在这里给出了我的代码和错误。

代码语言:javascript
复制
Future signup(email, password) async {
  var url = Uri.parse("http://localhost:5050/signup"); // iOS
  final http.Response response = await http.post(
    url,
    headers: {
      'Content-Type': 'application/json; charset=UTF-8',
    },
    body: json.encode({
      'email': email,
      'password': password,
    }),
  );
  print(response.body);
}

这是我的服务器文件:

代码语言:javascript
复制
const express = require('express')
const app = express()

const port = 5050
const mongoose = require('mongoose')


async function connectDB(){
    await mongoose.connect('mongodb+srv://imran:123s@cluster0.bupnj.mongodb.net/myFirstDatabase?retryWrites=true&w=majority',
    {useUnifiedTopology: true, useNewUrlParser: true}
    )
    console.log('db connected')
}
connectDB()
 
app.use(express.json({extended: false}))

// app.get('/', (req,   res) => {
//   res.send('Hello Backend Server!')
// })

const schema = new mongoose.Schema({ email: 'string', password: 'string' });
const User = mongoose.model('User', schema);

app.post('/signup', async (req, res) => {
  const {email, password} =  req.body;
  // console.log(req.body)
  //console.log("Email: "+email);
  //console.log("Password: "+password);
  

  let user = new User({
    email,
    password
  })
  console.log(user)
  await user.save()
  res.json({token: "1234567890"})

  //return res.send('signup api route!')
})

app.listen(port, () => {
  console.log(`Example app listening at http://localhost:${port}`)
})

下面是我得到的错误:

代码语言:javascript
复制
E/flutter ( 4842): [ERROR:flutter/lib/ui/ui_dart_state.cc(209)] Unhandled Exception: SocketException: OS Error: Connection refused, errno = 111, address = localhost, port = 55746
E/flutter ( 4842): #0      _NativeSocket.startConnect (dart:io-patch/socket_patch.dart:677:35)
E/flutter ( 4842): #1      _RawSocket.startConnect (dart:io-patch/socket_patch.dart:1680:26)
E/flutter ( 4842): #2      RawSocket.startConnect (dart:io-patch/socket_patch.dart:27:23)
E/flutter ( 4842): #3      Socket._startConnect (dart:io-patch/socket_patch.dart:1891:22)
E/flutter ( 4842): #4      Socket.startConnect (dart:io/socket.dart:738:21)
E/flutter ( 4842): #5      _ConnectionTarget.connect (dart:_http/http_impl.dart:2439:18)
E/flutter ( 4842): #6      _HttpClient._getConnection.connect (dart:_http/http_impl.dart:2805:12)
E/flutter ( 4842): #7      _HttpClient._getConnection (dart:_http/http_impl.dart:2810:12)
E/flutter ( 4842): #8      _HttpClient._openUrl (dart:_http/http_impl.dart:2694:12)
E/flutter ( 4842): #9      _HttpClient.openUrl (dart:_http/http_impl.dart:2568:7)
E/flutter ( 4842): #10     IOClient.send (package:http/src/io_client.dart:35:38)
E/flutter ( 4842): #11     BaseClient._sendUnstreamed (package:http/src/base_client.dart:93:38)
E/flutter ( 4842): #12     BaseClient.post (package:http/src/base_client.dart:32:7)
E/flutter ( 4842): #13     post.<anonymous closure> (package:http/http.dart:69:16)
E/flutter ( 4842): #14     _withClient (package:http/http.dart:164:20)
E/flutter ( 4842): #15     post (package:http/http.dart:68:5)
E/flutter ( 4842): #16     signup (package:sampleproject/login.dart:61:40)
E/flutter ( 4842): #17     _loginState.build.<anonymous closure>.<anonymous closure> (package:sampleproject/login.dart:50:19)
E/flutter ( 4842): #18     State.setState (package:flutter/src/widgets/framework.dart:1088:30)
E/flutter ( 4842): #19     _loginState.build.<anonymous closure> (package:sampleproject/login.dart:49:17) 
E/flutter ( 4842): #20     _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:989:21)
E/flutter ( 4842): #21     GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:193:24)
E/flutter ( 4842): #22     TapGestureRecognizer.handleTapUp (package:flutter/src/gestures/tap.dart:608:11)E/flutter ( 4842): #23     BaseTapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:296:5)E/flutter ( 4842): #24     BaseTapGestureRecognizer.acceptGesture (package:flutter/src/gestures/tap.dart:267:7)
E/flutter ( 4842): #25     GestureArenaManager.sweep (package:flutter/src/gestures/arena.dart:157:27)     
E/flutter ( 4842): #26     GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:444:20)  
E/flutter ( 4842): #27     GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:420:22)E/flutter ( 4842): #28     RendererBinding.dispatchEvent (package:flutter/src/rendering/binding.dart:278:11)
E/flutter ( 4842): #29     GestureBinding._handlePointerEventImmediately (package:flutter/src/gestures/binding.dart:374:7)
E/flutter ( 4842): #30     GestureBinding.handlePointerEvent (package:flutter/src/gestures/binding.dart:338:5)
E/flutter ( 4842): #31     GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:296:7)
E/flutter ( 4842): #32     GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:279:7)
E/flutter ( 4842): #33     _rootRunUnary (dart:async/zone.dart:1444:13)
E/flutter ( 4842): #34     _CustomZone.runUnary (dart:async/zone.dart:1335:19)
E/flutter ( 4842): #35     _CustomZone.runUnaryGuarded (dart:async/zone.dart:1244:7)
E/flutter ( 4842): #36     _invoke1 (dart:ui/hooks.dart:185:10)
E/flutter ( 4842): #37     PlatformDispatcher._dispatchPointerDataPacket (dart:ui/platform_dispatcher.dart:293:7)
E/flutter ( 4842): #38     _dispatchPointerDataPacket (dart:ui/hooks.dart:98:31)
E/flutter ( 4842):
EN

回答 2

Stack Overflow用户

发布于 2021-10-18 09:21:37

转到cmd并键入ipconfig,然后复制ip地址。您应该将url localhost替换为该ip地址。

代码语言:javascript
复制
var url = Uri.parse("http://your_ip_adrress:5050/signup");

这就是我解决这个问题的方法。

票数 0
EN

Stack Overflow用户

发布于 2021-11-16 09:44:57

更改localhost,转到模拟器中的wifi设置,复制网关ip并将"localhost“替换为该ip (我认为是10.2.2.2,但现在不确定)

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69570486

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档