Skip to content

Commit 0ef3b2f

Browse files
committed
add api headers
1 parent 525f293 commit 0ef3b2f

File tree

1 file changed

+13
-7
lines changed

1 file changed

+13
-7
lines changed

firebase-ai/src/main/kotlin/com/google/firebase/ai/common/APIController.kt

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ import io.ktor.client.plugins.websocket.WebSockets
4141
import io.ktor.client.plugins.websocket.webSocketSession
4242
import io.ktor.client.request.HttpRequestBuilder
4343
import io.ktor.client.request.header
44+
import io.ktor.client.request.headers
4445
import io.ktor.client.request.post
4546
import io.ktor.client.request.preparePost
4647
import io.ktor.client.request.setBody
@@ -164,7 +165,9 @@ internal constructor(
164165
"wss://firebasevertexai.googleapis.com/ws/google.firebase.vertexai.v1beta.LlmBidiService/BidiGenerateContent/locations/$location?key=$key"
165166

166167
suspend fun getWebSocketSession(location: String): ClientWebSocketSession =
167-
client.webSocketSession(getBidiEndpoint(location))
168+
client.webSocketSession(getBidiEndpoint(location)) {
169+
applyCommonHeaders()
170+
}
168171

169172
fun generateContentStream(
170173
request: GenerateContentRequest
@@ -191,12 +194,7 @@ internal constructor(
191194
throw FirebaseCommonAIException.from(e)
192195
}
193196

194-
private fun HttpRequestBuilder.applyCommonConfiguration(request: Request) {
195-
when (request) {
196-
is GenerateContentRequest -> setBody<GenerateContentRequest>(request)
197-
is CountTokensRequest -> setBody<CountTokensRequest>(request)
198-
is GenerateImageRequest -> setBody<GenerateImageRequest>(request)
199-
}
197+
private fun HttpRequestBuilder.applyCommonHeaders() {
200198
contentType(ContentType.Application.Json)
201199
header("x-goog-api-key", key)
202200
header("x-goog-api-client", apiClient)
@@ -205,6 +203,14 @@ internal constructor(
205203
header("X-Firebase-AppVersion", appVersion)
206204
}
207205
}
206+
private fun HttpRequestBuilder.applyCommonConfiguration(request: Request) {
207+
when (request) {
208+
is GenerateContentRequest -> setBody<GenerateContentRequest>(request)
209+
is CountTokensRequest -> setBody<CountTokensRequest>(request)
210+
is GenerateImageRequest -> setBody<GenerateImageRequest>(request)
211+
}
212+
applyCommonHeaders()
213+
}
208214

209215
private suspend fun HttpRequestBuilder.applyHeaderProvider() {
210216
if (headerProvider != null) {

0 commit comments

Comments
 (0)