File tree 3 files changed +17
-3
lines changed
Thirdweb/Thirdweb.Wallets/InAppWallet
EmbeddedWallet.Authentication
3 files changed +17
-3
lines changed Original file line number Diff line number Diff line change @@ -238,6 +238,7 @@ private static async Task<string> GenerateWallet(IThirdwebHttpClient httpClient)
238
238
239
239
private async Task < string > PostAuth ( Server . VerifyResult result )
240
240
{
241
+ this . HttpClient . RemoveHeader ( "Authorization" ) ;
241
242
this . HttpClient . AddHeader ( "Authorization" , $ "Bearer embedded-wallet-token:{ result . AuthToken } ") ;
242
243
243
244
string address ;
@@ -770,7 +771,7 @@ public async Task<string> LoginWithOauth(
770
771
payload = HttpUtility . UrlDecode ( queryDict [ "payload" ] ) ;
771
772
var payloadData = JsonConvert . DeserializeObject < LoginPayloadData > ( payload ) ;
772
773
773
- var serverRes = await this . EmbeddedWallet . SignInWithSiweRawAsync ( payloadData , signature ) . ConfigureAwait ( false ) ;
774
+ var serverRes = await this . EmbeddedWallet . SignInWithSiweExternalRawAsync ( payloadData , signature ) . ConfigureAwait ( false ) ;
774
775
return serverRes ;
775
776
}
776
777
Original file line number Diff line number Diff line change @@ -15,6 +15,7 @@ internal abstract class ServerBase
15
15
16
16
internal abstract Task < LoginPayloadData > FetchSiwePayloadAsync ( string address , string chainId ) ;
17
17
internal abstract Task < Server . VerifyResult > VerifySiweAsync ( LoginPayloadData payload , string signature ) ;
18
+ internal abstract Task < Server . VerifyResult > VerifySiweExternalAsync ( LoginPayloadData payload , string signature ) ;
18
19
19
20
internal abstract Task < Server . VerifyResult > VerifyBackendAsync ( string walletSecret ) ;
20
21
@@ -141,6 +142,18 @@ internal override async Task<LoginPayloadData> FetchSiwePayloadAsync(string addr
141
142
}
142
143
143
144
internal override async Task < VerifyResult > VerifySiweAsync ( LoginPayloadData payload , string signature )
145
+ {
146
+ var uri = MakeUri2024 ( "/login/siwe/callback" ) ;
147
+ var content = MakeHttpContent ( new { signature , payload } ) ;
148
+ ThirdwebHttpResponseMessage response ;
149
+ response = await this . _httpClient . PostAsync ( uri . ToString ( ) , content ) . ConfigureAwait ( false ) ;
150
+ await CheckStatusCodeAsync ( response ) . ConfigureAwait ( false ) ;
151
+
152
+ var authResult = await DeserializeAsync < AuthResultType > ( response ) . ConfigureAwait ( false ) ;
153
+ return await this . InvokeAuthResultLambdaAsync ( authResult ) . ConfigureAwait ( false ) ;
154
+ }
155
+
156
+ internal override async Task < VerifyResult > VerifySiweExternalAsync ( LoginPayloadData payload , string signature )
144
157
{
145
158
var uri = MakeUri2024 ( "/login/siwe/callback" ) ;
146
159
var content = MakeHttpContent ( new { signature , payload } ) ;
Original file line number Diff line number Diff line change @@ -14,8 +14,8 @@ internal partial class EmbeddedWallet
14
14
return await this . _server . VerifySiweAsync ( payload , signature ) . ConfigureAwait ( false ) ;
15
15
}
16
16
17
- public async Task < Server . VerifyResult > SignInWithSiweRawAsync ( LoginPayloadData payload , string signature )
17
+ public async Task < Server . VerifyResult > SignInWithSiweExternalRawAsync ( LoginPayloadData payload , string signature )
18
18
{
19
- return await this . _server . VerifySiweAsync ( payload , signature ) . ConfigureAwait ( false ) ;
19
+ return await this . _server . VerifySiweExternalAsync ( payload , signature ) . ConfigureAwait ( false ) ;
20
20
}
21
21
}
You can’t perform that action at this time.
0 commit comments