submitLeaveMsg method

Future<JsonResult> submitLeaveMsg(
  1. String? wid,
  2. String? aid,
  3. String? type,
  4. String? mobile,
  5. String? email,
  6. String? content,
  7. List<String>? imageUrls,
)

Implementation

Future<JsonResult> submitLeaveMsg(String? wid, String? aid, String? type,
    String? mobile, String? email, String? content, List<String>? imageUrls) async {
  //
  var body = json.encode({
    "wid": wid,
    "aid": aid,
    "type": type,
    "mobile": mobile,
    "email": email,
    "content": content,
    "images": imageUrls,
    "client": client
  });
  final initUrl = BytedeskUtils.getHostUri('/api/leavemsg/save');
  final initResponse =
      await httpClient.post(initUrl, headers: getHeaders(), body: body);
  //解决json解析中的乱码问题
  Utf8Decoder utf8decoder = const Utf8Decoder(); // fix 中文乱码
  //将string类型数据 转换为json类型的数据
  final responseJson =
      json.decode(utf8decoder.convert(initResponse.bodyBytes));
  debugPrint("submitLeaveMsg:");
  BytedeskUtils.printLog(responseJson);
  // 判断token是否过期
  if (responseJson.toString().contains('invalid_token')) {
    bytedeskEventBus.fire(InvalidTokenEventBus());
  }
  // return User.fromJson(responseJson);
  return const JsonResult();
}