requestZhipuAIThread method

Future<RequestThreadZhipuAIResult> requestZhipuAIThread(
  1. String? wid,
  2. String? forceNew
)

Implementation

Future<RequestThreadZhipuAIResult> requestZhipuAIThread(
    String? wid, String? forceNew) async {
  //
  final threadUrl = BytedeskUtils.getHostUri('/api/thread/zhipuai',
      {'wId': wid, 'forcenew': forceNew, 'client': client});
  debugPrint(
      "requestZhipuAIThread: $threadUrl, wid: $wid, forceNew: $forceNew");
  //
  final initResponse = await httpClient.get(threadUrl, headers: getHeaders());
  //解决json解析中的乱码问题
  Utf8Decoder utf8decoder = const Utf8Decoder(); // fix 中文乱码
  //将string类型数据 转换为json类型的数据
  final responseJson =
      json.decode(utf8decoder.convert(initResponse.bodyBytes));
  debugPrint("requestZhipuAIThread: $responseJson", wrapWidth: 2048);
  // 判断token是否过期
  if (responseJson.toString().contains('invalid_token')) {
    bytedeskEventBus.fire(InvalidTokenEventBus());
  }
  return RequestThreadZhipuAIResult.fromJson(responseJson);
}