团队作业博客(六)flutter springboot 调用商用API
调用的为 文心一言大模型 api
LuckyCola 获取api
import 'package:flutter/material.dart';
import 'package:http/http.dart' as http;
import 'dart:convert';
class ChatDialog extends StatefulWidget {
@override
_ChatDialogState createState() => _ChatDialogState();
}
class _ChatDialogState extends State<ChatDialog> {
TextEditingController _textEditingController = TextEditingController();
String _chatHistory = '';
Future<void> sendMessage(String message) async {
String apiUrl = 'https://luckycola.com.cn/ai/openwxyy';
Map<String, String> requestBody = {
'ques': message,
'appKey': '',
'uid': '',
'isLongChat': '1',
};
Map<String, String> headers = {
'Content-Type': 'application/json',
};
var response = await http.post(Uri.parse(apiUrl), headers: headers, body: jsonEncode(requestBody));
if (response.statusCode == 200) {
Map<String, dynamic> responseData = jsonDecode(response.body);
setState(() {
var sb = StringBuffer(_chatHistory);
sb.writeln('我: $message');
sb.writeln('知心姐姐: ${responseData['data']['result']}');
_chatHistory = sb.toString();
});
} else {
setState(() {
var sb = StringBuffer(_chatHistory);
sb.writeln('Error connecting to ChatGPT API');
_chatHistory = sb.toString();
});
}
}
@override
Widget build(BuildContext context) {
return AlertDialog(
title: Text('知心树洞'),
content: Column(
mainAxisSize: MainAxisSize.min,
children: [
Expanded(
child: SingleChildScrollView(
child: Text(_chatHistory),
),
),
TextField(
controller: _textEditingController,
decoration: InputDecoration(hintText: '在这里输入你所发送的信息'),
),
ElevatedButton(
onPressed: () {
String message = _textEditingController.text.trim();
if (message.isNotEmpty) {
sendMessage(message);
_textEditingController.clear();
}
},
child: Text('发送'),
),
],
),
);
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
2023-04-23 每天打卡一小时 第十四天 编译四部曲