postOpenAiJson function

Future<Map<String, dynamic>> postOpenAiJson({
  1. required String url,
  2. required String apiKey,
  3. required String provider,
  4. required Map<String, dynamic> body,
  5. Map<String, String> extraHeaders = const {},
})

OpenAI 互換 API に POST し、JSON ボディを返す。失敗時は LLMException

extraHeaders で OpenRouter 推奨の HTTP-Referer / X-Title などを 追加できる。

Implementation

Future<Map<String, dynamic>> postOpenAiJson({
  required String url,
  required String apiKey,
  required String provider,
  required Map<String, dynamic> body,
  Map<String, String> extraHeaders = const {},
}) {
  return requestJson(
    provider: provider,
    send: () => Api.post(
      requestAcc: PostRequestAcc(
        url: url,
        headers: RestHeaders({
          'Authorization': 'Bearer $apiKey',
          'Content-Type': 'application/json',
          ...extraHeaders,
        }),
        body: JsonRequestBody(body),
      ),
    ),
  );
}