You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android模拟器运行Flutter代码调用OpenAI API时连接超时求助

Flutter模拟器连接OpenAI API超时问题求助

环境信息

  • Android Studio版本:Electric Eel | 2022.1.1 Patch 2
  • Flutter版本:3.7.8
  • 测试模拟器:Nexus 6 API 28

问题描述

代码在本地运行正常,但在模拟器中调用https://api.openai.com/v1/chat/completions接口时,始终返回connection timed out错误。

相关代码

Future<Album> fetchAlbum() async {
  final response = await http.post(
    Uri.parse('https://api.openai.com/v1/chat/completions'),

    headers: {
      'Content-Type': 'application/json',
      'Authorization': 'Bearer $apiKey',
    },
    body: jsonEncode({
      "model": "gpt-3.5-turbo",

      "messages": [
        {
          "role": "user",
          "content": '$prompt',
        }
      ]
    }),
  );

  if (response.statusCode == 200) {
    return Album.fromJson(jsonDecode(response.body));
  } else {
    throw Exception('Failed to load album');
  }

}


class Album{ ... }    //details omitted


void main() => runApp(const MyApp());

class MyApp extends StatefulWidget {
  const MyApp({super.key});

  @override
  State<MyApp> createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  late Future<Album> futureAlbum;
  String prompt = 'hello';

  @override
  void initState() {
    super.initState();
    futureAlbum = fetchAlbum();
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Fetch Data from OpenAi',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Fetch Data from OpenAi'),
        ),
        body: Center(
          
          child: FutureBuilder<Album>(
            future: futureAlbum,
            builder: (context, snapshot) {
              if (snapshot.hasData) {
                
                return Column(
                  children: [
                    Text('object' + snapshot.data!.object),
                    Text('id: ' + snapshot.data!.id),
                    Text('created' + snapshot.data!.created.toString()),
                    Text('content: ' + snapshot.data!.content)
                  ],
                );
              } else if (snapshot.hasError) {
                  return Text('${snapshot.error}');
              }

              // By default, show a loading spinner.
              return const CircularProgressIndicator();
            },
          ),
        ),
      ),
    );
  }
}

求助

有没有遇到相同问题的开发者,能分享解决经验?非常感谢!


内容的提问来源于stack exchange,提问作者Xiangqian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 05:07:30