diff options
| author | sigoden <sigoden@gmail.com> | 2024-09-13 05:50:00 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-09-13 05:50:00 +0800 |
| commit | 99005a2032bdd306b7bf89fe86117eab15b4cfe7 (patch) | |
| tree | e26300b24d8e3b081a4cd140573ff539bf31e528 /src | |
| parent | 8b3bd63c3c976ee1081a751b1eb5f0dab6763c72 (diff) | |
| download | aichat-99005a2032bdd306b7bf89fe86117eab15b4cfe7.tar.gz | |
refactor: catch api error (#861)
Diffstat (limited to 'src')
| -rw-r--r-- | src/client/common.rs | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/client/common.rs b/src/client/common.rs index 9232a2b..cb112b7 100644 --- a/src/client/common.rs +++ b/src/client/common.rs @@ -497,6 +497,11 @@ pub fn catch_error(data: &Value, status: u16) -> Result<()> { json_str_from_map(error, "message"), ) { bail!("{message} (type: {typ})"); + } else if let (Some(typ), Some(message)) = ( + json_str_from_map(error, "code"), + json_str_from_map(error, "message"), + ) { + bail!("{message} (code: {typ})"); } } else if let Some(error) = data["errors"][0].as_object() { if let (Some(code), Some(message)) = ( |
