Просмотр исходного кода

sdk: throw error if response has text/html content type (#21289)

Brendan Allan 4 месяцев назад
Родитель
Сommit
26d35583c5
1 измененных файлов с 8 добавлено и 2 удалено
  1. 8 2
      packages/sdk/js/src/v2/client.ts

+ 8 - 2
packages/sdk/js/src/v2/client.ts

@@ -77,6 +77,12 @@ export function createOpencodeClient(config?: Config & { directory?: string; exp
       workspace: config?.experimental_workspaceID,
     }),
   )
-  const result = new OpencodeClient({ client })
-  return result
+  client.interceptors.response.use((response) => {
+    const contentType = response.headers.get("content-type")
+    if (contentType === "text/html")
+      throw new Error("Request is not supported by this version of OpenCode Server (Server responded with text/html)")
+
+    return response
+  })
+  return new OpencodeClient({ client })
 }