From a1d76ae0e0990810b2b7e1c5f81bc18ca6dd293a Mon Sep 17 00:00:00 2001 From: Gaurav Goel Date: Wed, 4 Sep 2024 13:35:27 +0530 Subject: [PATCH] feat: added origin header in authorize session API. Signed-off-by: Gaurav Goel --- .../web3auth/session_manager_android/SessionManagerTest.kt | 1 + .../com/web3auth/session_manager_android/SessionManager.kt | 5 +++-- .../com/web3auth/session_manager_android/api/Web3AuthApi.kt | 6 +++++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/session-manager-android/src/androidTest/java/com/web3auth/session_manager_android/SessionManagerTest.kt b/session-manager-android/src/androidTest/java/com/web3auth/session_manager_android/SessionManagerTest.kt index a607e53..c941633 100644 --- a/session-manager-android/src/androidTest/java/com/web3auth/session_manager_android/SessionManagerTest.kt +++ b/session-manager-android/src/androidTest/java/com/web3auth/session_manager_android/SessionManagerTest.kt @@ -53,6 +53,7 @@ class SessionManagerTest { ).get() sessionManager = SessionManager(context) val authResponse = sessionManager.authorizeSession( + "", context ).get() val resp = JSONObject(authResponse) diff --git a/session-manager-android/src/main/java/com/web3auth/session_manager_android/SessionManager.kt b/session-manager-android/src/main/java/com/web3auth/session_manager_android/SessionManager.kt index ef5a212..4636310 100644 --- a/session-manager-android/src/main/java/com/web3auth/session_manager_android/SessionManager.kt +++ b/session-manager-android/src/main/java/com/web3auth/session_manager_android/SessionManager.kt @@ -59,7 +59,7 @@ class SessionManager(context: Context) { * Authorize User session in order to avoid re-login */ - fun authorizeSession(context: Context): CompletableFuture { + fun authorizeSession(origin: String, context: Context): CompletableFuture { return CompletableFuture.supplyAsync { if (!ApiHelper.isNetworkAvailable(context)) { throw Exception( @@ -84,13 +84,14 @@ class SessionManager(context: Context) { runBlocking { withContext(Dispatchers.IO) { web3AuthApi.authorizeSession( + origin = origin, AuthorizeSessionRequest(key = pubKey) ) } } - if (!(response.isSuccessful && response.body() != null && response.body()?.message != null)) { + if (!(response.isSuccessful && response.body() != null && response.body()?.message != "")) { throw Exception( SessionManagerError.getError( ErrorCode.NOUSERFOUND diff --git a/session-manager-android/src/main/java/com/web3auth/session_manager_android/api/Web3AuthApi.kt b/session-manager-android/src/main/java/com/web3auth/session_manager_android/api/Web3AuthApi.kt index 6a85779..15c3ec2 100644 --- a/session-manager-android/src/main/java/com/web3auth/session_manager_android/api/Web3AuthApi.kt +++ b/session-manager-android/src/main/java/com/web3auth/session_manager_android/api/Web3AuthApi.kt @@ -6,6 +6,7 @@ import com.web3auth.session_manager_android.models.StoreApiResponse import org.json.JSONObject import retrofit2.Response import retrofit2.http.Body +import retrofit2.http.Header import retrofit2.http.POST interface Web3AuthApi { @@ -14,7 +15,10 @@ interface Web3AuthApi { suspend fun createSession(@Body sessionRequestBody: SessionRequestBody): Response @POST("/v2/store/get") - suspend fun authorizeSession(@Body authorizeSessionRequest: AuthorizeSessionRequest): Response + suspend fun authorizeSession( + @Header("origin") origin: String, + @Body authorizeSessionRequest: AuthorizeSessionRequest + ): Response @POST("/v2/store/set") suspend fun invalidateSession(@Body sessionRequestBody: SessionRequestBody): Response