2024-11-12 20:46:23 +08:00
using System ;
using System.Collections ;
using System.Collections.Generic ;
using UnityEngine ;
using System.Threading.Tasks ;
using Newtonsoft.Json ;
2024-11-13 21:52:56 +08:00
using UnityEngine.UI ;
using Newtonsoft.Json.Linq ;
/ * public class selsecUserInfo : MonoBehaviour
2024-11-12 20:46:23 +08:00
{
public string token = null ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> token<65> <6E> <EFBFBD> <EFBFBD> ʼ Ϊ null
public int escapeId = - 1 ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> escapeId<49> <64> <EFBFBD> <EFBFBD> ʼ Ϊ -1 <20> <> ʾ δ<CABE> <CEB4> <EFBFBD> <EFBFBD>
void Start ( )
{
// ע<> <D7A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> յ<EFBFBD> token ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> HandleTokenReceived
LoginAndGetToken . OnTokenReceived + = HandleTokenReceived ;
// ע<> <D7A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> escapeId <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> HandleGameEscapeIdUpdated<65> <64> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ִ<EFBFBD> <D6B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2024-11-14 18:09:37 +08:00
selectLatest511 . OnGameEscapeIdUpdated + = HandleGameEscapeIdUpdated ;
2024-11-12 20:46:23 +08:00
}
// <20> <> <EFBFBD> <EFBFBD> <EFBFBD> յ<EFBFBD> token ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> ˷<EFBFBD> <CBB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> token
public void HandleTokenReceived ( string receivedToken )
{
token = receivedToken ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> token
// <20> ״ε<D7B4> <CEB5> ü<EFBFBD> <C3BC> س<EFBFBD> ʼ <EFBFBD> <CABC> <EFBFBD> <EFBFBD>
LoadInitialData ( ) ;
//LoadGameEscapeData();
//Debug.Log("<22> <> <EFBFBD> յ<EFBFBD> <D5B5> µ<EFBFBD> token: " + token);
}
// <20> <> <EFBFBD> <EFBFBD> Ϸ<EFBFBD> <CFB7> <EFBFBD> <EFBFBD> ID <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> ˷<EFBFBD> <CBB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> escapeId
public async void HandleGameEscapeIdUpdated ( int newGameEscapeId )
{
escapeId = newGameEscapeId ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> escapeId
await selectUser ( ) ; //=====================================================================<3D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> д<EFBFBD> <D0B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Է<EFBFBD> <D4B7> <EFBFBD> <EFBFBD> κεط<CEB5> <D8B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> input.GetKeyDown.....<2E> <> <EFBFBD> <EFBFBD> <EFBFBD> ĵ<EFBFBD> <C4B5> <EFBFBD> <EFBFBD> Է<EFBFBD> <D4B7> <EFBFBD> <EFBFBD> <EFBFBD>
//Debug.Log("<22> <> <EFBFBD> յ<EFBFBD> <D5B5> µ<EFBFBD> GameEscapeId: " + escapeId);
}
// <20> <> <EFBFBD> س<EFBFBD> ʼ <EFBFBD> <CABC> <EFBFBD> ݣ<EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> token
public async void LoadInitialData ( )
{
if ( string . IsNullOrEmpty ( token ) )
{
Debug . LogWarning ( "<22> <EFBFBD> <DEB7> <EFBFBD> <EFBFBD> س<EFBFBD> ʼ <EFBFBD> <CABC> <EFBFBD> ݣ<EFBFBD> token δ<> <CEB4> <EFBFBD> á<EFBFBD> " ) ;
return ;
}
await selectUser ( ) ; //=====================================================================<3D> <> <EFBFBD> ڴ˴ <DAB4> ֻΪ<D6BB> <CEAA> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> ɫ<EFBFBD> <C9AB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ġ<EFBFBD> <C4A1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Բ<EFBFBD> Ҫ
}
// <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϸ<EFBFBD> <CFB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݣ<EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> escapeId <20> <> token
public async void selectQueryKill1 ( )
{
if ( string . IsNullOrEmpty ( token ) )
{
Debug . LogWarning ( "<22> <EFBFBD> <DEB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϸ<EFBFBD> <CFB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݣ<EFBFBD> token δ<> <CEB4> <EFBFBD> á<EFBFBD> " ) ;
return ;
}
if ( escapeId = = - 1 )
{
Debug . LogWarning ( "<22> <EFBFBD> <DEB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϸ<EFBFBD> <CFB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݣ<EFBFBD> escapeId δ<> <CEB4> <EFBFBD> á<EFBFBD> " ) ;
return ;
}
await selectUser ( ) ; //==========================================================================================================================================================================
}
//===============================================================================================================================================================================================================================
// <20> <> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD>
public async Task < string > selectUser ( )
{
var headers = CreateHeaders ( ) ;
Debug . Log ( "<22> <> <EFBFBD> ڲ<EFBFBD> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> ϸ<EFBFBD> <CFB8> Ϣ..." ) ;
string response = await web . SendRequest ( "http://121.40.42.41:8080/snail/user/queryUserInfo" , "POST" , "{}" , headers ) ;
Debug . Log ( "<22> <> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> ϸ<EFBFBD> <CFB8> Ϣ<EFBFBD> <CFA2> Ӧ: " + response ) ;
return response ;
}
//===============================================================================================================================================================================================================================
// <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD> <CDB7> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> token
public Dictionary < string , string > CreateHeaders ( )
{
if ( string . IsNullOrEmpty ( token ) )
{
Debug . LogWarning ( "<22> <> <EFBFBD> Դ<EFBFBD> <D4B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷʱ<CDB7> <CAB1> token δ<> <CEB4> <EFBFBD> á<EFBFBD> " ) ;
return new Dictionary < string , string > ( ) ;
}
return new Dictionary < string , string >
{
{ "Authorization" , token }
} ;
}
void OnDestroy ( )
{
// ע<> <D7A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> й©
LoginAndGetToken . OnTokenReceived - = HandleTokenReceived ;
2024-11-14 18:09:37 +08:00
selectLatest511 . OnGameEscapeIdUpdated - = HandleGameEscapeIdUpdated ;
2024-11-12 20:46:23 +08:00
}
2024-11-13 21:52:56 +08:00
} * /
2024-11-15 12:09:52 +08:00
/ * public class SelectUserInfo14 : MonoBehaviour
2024-11-13 21:52:56 +08:00
{
public string token = null ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> token<65> <6E> <EFBFBD> <EFBFBD> ʼ Ϊ null
public int escapeId = - 1 ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> escapeId<49> <64> <EFBFBD> <EFBFBD> ʼ Ϊ -1 <20> <> ʾ δ<CABE> <CEB4> <EFBFBD> <EFBFBD>
private string lastSelectUserInfoResponse = null ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> <C2B5> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѯ<EFBFBD> <D1AF> Ӧ
// <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> ֶ<EFBFBD> <D6B6> <EFBFBD> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> İ<EFBFBD> ť
public Button selectUserInfoButton ;
void Start ( )
{
// ע<> <D7A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> յ<EFBFBD> token ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> HandleTokenReceived
LoginAndGetToken . OnTokenReceived + = HandleTokenReceived ;
// ע<> <D7A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> escapeId <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> HandleGameEscapeIdUpdated
2024-11-14 18:09:37 +08:00
selectLatest511 . OnGameEscapeIdUpdated + = HandleGameEscapeIdUpdated ;
2024-11-13 21:52:56 +08:00
// <20> <> <EFBFBD> 谴ť<E8B0B4> <C5A5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> OnSelectUserInfoButtonClicked
if ( selectUserInfoButton ! = null )
{
selectUserInfoButton . onClick . AddListener ( OnSelectUserInfoButtonClicked ) ;
}
}
// <20> <> <EFBFBD> <EFBFBD> <EFBFBD> յ<EFBFBD> token ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> ˷<EFBFBD> <CBB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> token
public void HandleTokenReceived ( string receivedToken )
{
token = receivedToken ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> token
Debug . Log ( "<22> <> <EFBFBD> յ<EFBFBD> <D5B5> µ<EFBFBD> token: " + token ) ;
// <20> ״ε<D7B4> <CEB5> ü<EFBFBD> <C3BC> س<EFBFBD> ʼ <EFBFBD> <CABC> <EFBFBD> <EFBFBD>
LoadInitialData ( ) ;
}
// <20> <> <EFBFBD> <EFBFBD> Ϸ<EFBFBD> <CFB7> <EFBFBD> <EFBFBD> ID <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> ˷<EFBFBD> <CBB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> escapeId
public async void HandleGameEscapeIdUpdated ( int newGameEscapeId )
{
escapeId = newGameEscapeId ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> escapeId
Debug . Log ( "<22> <> <EFBFBD> յ<EFBFBD> <D5B5> µ<EFBFBD> GameEscapeId: " + escapeId ) ;
// <20> ڽ<EFBFBD> <DABD> յ<EFBFBD> escapeId <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> Զ<EFBFBD> <D4B6> <EFBFBD> <EFBFBD> ò<EFBFBD> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD>
lastSelectUserInfoResponse = await SelectUser ( ) ;
Debug . Log ( "HandleGameEscapeIdUpdated <20> <> <EFBFBD> <EFBFBD> <EFBFBD> IJ<EFBFBD> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ: " + lastSelectUserInfoResponse ) ;
}
// <20> <> <EFBFBD> س<EFBFBD> ʼ <EFBFBD> <CABC> <EFBFBD> ݣ<EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> token
public async void LoadInitialData ( )
{
if ( string . IsNullOrEmpty ( token ) )
{
Debug . LogWarning ( "<22> <EFBFBD> <DEB7> <EFBFBD> <EFBFBD> س<EFBFBD> ʼ <EFBFBD> <CABC> <EFBFBD> ݣ<EFBFBD> token δ<> <CEB4> <EFBFBD> á<EFBFBD> " ) ;
return ;
}
// <20> <> <EFBFBD> ò<EFBFBD> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> 鷽<EFBFBD> <E9B7BD>
lastSelectUserInfoResponse = await SelectUser ( ) ;
Debug . Log ( "<22> <> ʼ <EFBFBD> <CABC> <EFBFBD> صIJ<D8B5> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ: " + lastSelectUserInfoResponse ) ;
}
// <20> <> ť<EFBFBD> <C5A5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <F3B4A5B7> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѯ<EFBFBD> <D1AF> <EFBFBD> <EFBFBD>
public async void OnSelectUserInfoButtonClicked ( )
{
// <20> <> <EFBFBD> <EFBFBD> token <20> Ƿ<EFBFBD> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD> ȷ<EFBFBD> <C8B7> <EFBFBD> <EFBFBD>
if ( string . IsNullOrEmpty ( token ) )
{
Debug . LogWarning ( "<22> <EFBFBD> <DEB7> <EFBFBD> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> 飬token δ<> <CEB4> <EFBFBD> á<EFBFBD> " ) ;
return ;
}
// <20> <> <EFBFBD> ò<EFBFBD> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> 鷽<EFBFBD> <E9B7BD>
lastSelectUserInfoResponse = await SelectUser ( ) ;
Debug . Log ( "<22> û<EFBFBD> <C3BB> <EFBFBD> ť<EFBFBD> <C5A5> <EFBFBD> <EFBFBD> <EFBFBD> IJ<EFBFBD> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ: " + lastSelectUserInfoResponse ) ;
// <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> Ĵ<EFBFBD> <C4B4> <EFBFBD>
HandleSelectUserResponse ( lastSelectUserInfoResponse ) ;
}
// <20> <> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD>
public async Task < string > SelectUser ( )
{
if ( string . IsNullOrEmpty ( token ) )
{
Debug . LogWarning ( "<22> <EFBFBD> <DEB7> <EFBFBD> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> 飬token δ<> <CEB4> <EFBFBD> á<EFBFBD> " ) ;
return null ;
}
var headers = CreateHeaders ( ) ;
Debug . Log ( "<22> <> <EFBFBD> ڲ<EFBFBD> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> ϸ<EFBFBD> <CFB8> Ϣ..." ) ;
string response = await web . SendRequest ( "http://121.40.42.41:8080/snail/user/queryUserInfo" , "POST" , "{}" , headers ) ;
Debug . Log ( "<22> <> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> ϸ<EFBFBD> <CFB8> Ϣ<EFBFBD> <CFA2> Ӧ: " + response ) ;
return response ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ
}
// <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD> <CDB7> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> token
public Dictionary < string , string > CreateHeaders ( )
{
if ( string . IsNullOrEmpty ( token ) )
{
Debug . LogWarning ( "<22> <> <EFBFBD> Դ<EFBFBD> <D4B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷʱ<CDB7> <CAB1> token δ<> <CEB4> <EFBFBD> á<EFBFBD> " ) ;
return new Dictionary < string , string > ( ) ;
}
return new Dictionary < string , string >
{
{ "Authorization" , token }
} ;
}
// <20> <> <EFBFBD> <EFBFBD> SelectUser <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ
private void HandleSelectUserResponse ( string response )
{
if ( response . Contains ( "success" ) )
{
Debug . Log ( "<22> <> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɹ<EFBFBD> <C9B9> <EFBFBD> " ) ;
}
else
{
Debug . LogWarning ( "<22> <> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> ʧ<EFBFBD> ܣ<EFBFBD> <DCA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ: " + response ) ;
}
}
void OnDestroy ( )
{
// ע<> <D7A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> й©
LoginAndGetToken . OnTokenReceived - = HandleTokenReceived ;
2024-11-14 18:09:37 +08:00
selectLatest511 . OnGameEscapeIdUpdated - = HandleGameEscapeIdUpdated ;
2024-11-13 21:52:56 +08:00
// ȡ<> <C8A1> <EFBFBD> <EFBFBD> ť<EFBFBD> ĵ<EFBFBD> <C4B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
if ( selectUserInfoButton ! = null )
{
selectUserInfoButton . onClick . RemoveListener ( OnSelectUserInfoButtonClicked ) ;
}
}
} * /
2024-11-15 12:09:52 +08:00
//<2F> <> <EFBFBD> <EFBFBD> +<2B> <> <EFBFBD> <EFBFBD>
2024-11-13 21:52:56 +08:00
2024-11-15 12:09:52 +08:00
public class SelectUserInfo14 : MonoBehaviour
2024-11-13 21:52:56 +08:00
{
2024-11-15 12:09:52 +08:00
// <20> <> <EFBFBD> <EFBFBD> ģʽ ʵ<CABD> <CAB5>
public static SelectUserInfo14 Instance { get ; private set ; }
// ȫ<> ֱ<EFBFBD> <D6B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ洢<DAB4> <E6B4A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> صľ<D8B5> <C4BE> <EFBFBD> <EFBFBD> ֶ<EFBFBD>
2024-11-13 21:52:56 +08:00
public string token = null ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> token<65> <6E> <EFBFBD> <EFBFBD> ʼ Ϊ null
public int escapeId = - 1 ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> escapeId<49> <64> <EFBFBD> <EFBFBD> ʼ Ϊ -1 <20> <> ʾ δ<CABE> <CEB4> <EFBFBD> <EFBFBD>
private string lastSelectUserInfoResponse = null ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> <C2B5> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѯ<EFBFBD> <D1AF> Ӧ
2024-11-15 12:09:52 +08:00
// <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ص<EFBFBD> <D8B5> ֶΣ<D6B6> <CEA3> <EFBFBD> Ϊȫ<CEAA> ֱ<EFBFBD> <D6B1> <EFBFBD>
public int code ; // ״̬<D7B4> 룬<EFBFBD> <EBA3AC> <EFBFBD> <EFBFBD> 200 <20> <> ʾ <EFBFBD> ɹ<EFBFBD>
public string message ; // <20> <> ʾ <EFBFBD> <CABE> Ϣ
public int userId ; // <20> û<EFBFBD> ID
public string userName ; // <20> û<EFBFBD> <C3BB> <EFBFBD>
public string nickName ; // <20> dz<EFBFBD>
public string headImg ; // ͷ<> <CDB7>
public int gender ; // <20> Ա<EFBFBD> <D4B1> <EFBFBD> 1 <20> <> ʾ <EFBFBD> У <EFBFBD> 2 <20> <> ʾ Ů
public string birthday ; // <20> <> <EFBFBD> <EFBFBD>
public int voluteCoin ; // <20> Ͽ<EFBFBD>
public int beansCoin ; // <20> <> ţ<EFBFBD> <C5A3>
public int ichorCoin ; // <20> <> Һ
public int cuteNo ; // <20> <> <EFBFBD> <EFBFBD>
// <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> ֶ<EFBFBD> <D6B6> <EFBFBD> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> İ<EFBFBD> ť
2024-11-13 21:52:56 +08:00
public Button selectUserInfoButton ;
2024-11-15 12:09:52 +08:00
void Awake ( )
{
// ʵ<> ֵ<EFBFBD> <D6B5> <EFBFBD> ģʽ
if ( Instance = = null )
{
Instance = this ;
DontDestroyOnLoad ( gameObject ) ; // <20> <> ֤<EFBFBD> <D6A4> ʵ<EFBFBD> <CAB5> <EFBFBD> ڳ<EFBFBD> <DAB3> <EFBFBD> <EFBFBD> л<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> ᱻ<EFBFBD> <E1B1BB> <EFBFBD> <EFBFBD>
}
else
{
Destroy ( gameObject ) ;
}
}
2024-11-13 21:52:56 +08:00
void Start ( )
{
// ע<> <D7A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> յ<EFBFBD> token ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> HandleTokenReceived
LoginAndGetToken . OnTokenReceived + = HandleTokenReceived ;
// ע<> <D7A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> escapeId <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> HandleGameEscapeIdUpdated
2024-11-14 18:09:37 +08:00
selectLatest511 . OnGameEscapeIdUpdated + = HandleGameEscapeIdUpdated ;
2024-11-13 21:52:56 +08:00
2024-11-15 12:09:52 +08:00
// <20> <> <EFBFBD> 谴ť<E8B0B4> <C5A5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> OnSelectUserInfoButtonClicked
2024-11-13 21:52:56 +08:00
if ( selectUserInfoButton ! = null )
{
selectUserInfoButton . onClick . AddListener ( OnSelectUserInfoButtonClicked ) ;
}
}
// <20> <> <EFBFBD> <EFBFBD> <EFBFBD> յ<EFBFBD> token ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> ˷<EFBFBD> <CBB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> token
public void HandleTokenReceived ( string receivedToken )
{
token = receivedToken ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> token
Debug . Log ( "<22> <> <EFBFBD> յ<EFBFBD> <D5B5> µ<EFBFBD> token: " + token ) ;
// <20> ״ε<D7B4> <CEB5> ü<EFBFBD> <C3BC> س<EFBFBD> ʼ <EFBFBD> <CABC> <EFBFBD> <EFBFBD>
LoadInitialData ( ) ;
}
// <20> <> <EFBFBD> <EFBFBD> Ϸ<EFBFBD> <CFB7> <EFBFBD> <EFBFBD> ID <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> ˷<EFBFBD> <CBB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> escapeId
public async void HandleGameEscapeIdUpdated ( int newGameEscapeId )
{
escapeId = newGameEscapeId ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> escapeId
Debug . Log ( "<22> <> <EFBFBD> յ<EFBFBD> <D5B5> µ<EFBFBD> GameEscapeId: " + escapeId ) ;
// <20> ڽ<EFBFBD> <DABD> յ<EFBFBD> escapeId <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> Զ<EFBFBD> <D4B6> <EFBFBD> <EFBFBD> ò<EFBFBD> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD>
lastSelectUserInfoResponse = await SelectUser ( ) ;
Debug . Log ( "HandleGameEscapeIdUpdated <20> <> <EFBFBD> <EFBFBD> <EFBFBD> IJ<EFBFBD> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ: " + lastSelectUserInfoResponse ) ;
2024-11-15 12:09:52 +08:00
// <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѯ<EFBFBD> <D1AF> <EFBFBD> <EFBFBD>
ParseSelectUserInfoResponse ( lastSelectUserInfoResponse ) ;
2024-11-13 21:52:56 +08:00
}
// <20> <> <EFBFBD> س<EFBFBD> ʼ <EFBFBD> <CABC> <EFBFBD> ݣ<EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> token
public async void LoadInitialData ( )
{
if ( string . IsNullOrEmpty ( token ) )
{
Debug . LogWarning ( "<22> <EFBFBD> <DEB7> <EFBFBD> <EFBFBD> س<EFBFBD> ʼ <EFBFBD> <CABC> <EFBFBD> ݣ<EFBFBD> token δ<> <CEB4> <EFBFBD> á<EFBFBD> " ) ;
return ;
}
// <20> <> <EFBFBD> ò<EFBFBD> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> 鷽<EFBFBD> <E9B7BD>
lastSelectUserInfoResponse = await SelectUser ( ) ;
Debug . Log ( "<22> <> ʼ <EFBFBD> <CABC> <EFBFBD> صIJ<D8B5> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ: " + lastSelectUserInfoResponse ) ;
2024-11-15 12:09:52 +08:00
// <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѯ<EFBFBD> <D1AF> <EFBFBD> <EFBFBD>
ParseSelectUserInfoResponse ( lastSelectUserInfoResponse ) ;
2024-11-13 21:52:56 +08:00
}
// <20> <> ť<EFBFBD> <C5A5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <F3B4A5B7> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѯ<EFBFBD> <D1AF> <EFBFBD> <EFBFBD>
public async void OnSelectUserInfoButtonClicked ( )
{
// <20> <> <EFBFBD> <EFBFBD> token <20> Ƿ<EFBFBD> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD> ȷ<EFBFBD> <C8B7> <EFBFBD> <EFBFBD>
if ( string . IsNullOrEmpty ( token ) )
{
Debug . LogWarning ( "<22> <EFBFBD> <DEB7> <EFBFBD> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> 飬token δ<> <CEB4> <EFBFBD> á<EFBFBD> " ) ;
return ;
}
// <20> <> <EFBFBD> ò<EFBFBD> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> 鷽<EFBFBD> <E9B7BD>
lastSelectUserInfoResponse = await SelectUser ( ) ;
Debug . Log ( "<22> û<EFBFBD> <C3BB> <EFBFBD> ť<EFBFBD> <C5A5> <EFBFBD> <EFBFBD> <EFBFBD> IJ<EFBFBD> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ: " + lastSelectUserInfoResponse ) ;
2024-11-15 12:09:52 +08:00
// <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѯ<EFBFBD> <D1AF> <EFBFBD> <EFBFBD>
ParseSelectUserInfoResponse ( lastSelectUserInfoResponse ) ;
2024-11-13 21:52:56 +08:00
}
// <20> <> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD>
public async Task < string > SelectUser ( )
{
if ( string . IsNullOrEmpty ( token ) )
{
Debug . LogWarning ( "<22> <EFBFBD> <DEB7> <EFBFBD> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> 飬token δ<> <CEB4> <EFBFBD> á<EFBFBD> " ) ;
return null ;
}
var headers = CreateHeaders ( ) ;
Debug . Log ( "<22> <> <EFBFBD> ڲ<EFBFBD> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> ϸ<EFBFBD> <CFB8> Ϣ..." ) ;
string response = await web . SendRequest ( "http://121.40.42.41:8080/snail/user/queryUserInfo" , "POST" , "{}" , headers ) ;
Debug . Log ( "<22> <> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> ϸ<EFBFBD> <CFB8> Ϣ<EFBFBD> <CFA2> Ӧ: " + response ) ;
return response ; // <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ
}
// <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD> <CDB7> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> token
public Dictionary < string , string > CreateHeaders ( )
{
if ( string . IsNullOrEmpty ( token ) )
{
Debug . LogWarning ( "<22> <> <EFBFBD> Դ<EFBFBD> <D4B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷʱ<CDB7> <CAB1> token δ<> <CEB4> <EFBFBD> á<EFBFBD> " ) ;
return new Dictionary < string , string > ( ) ;
}
return new Dictionary < string , string >
{
{ "Authorization" , token }
} ;
}
2024-11-15 12:09:52 +08:00
// <20> <> <EFBFBD> <EFBFBD> SelectUser <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȫ<EFBFBD> ֱ<EFBFBD> <D6B1> <EFBFBD>
private void ParseSelectUserInfoResponse ( string response )
2024-11-13 21:52:56 +08:00
{
2024-11-15 12:09:52 +08:00
if ( string . IsNullOrEmpty ( response ) )
{
Debug . LogWarning ( "<22> <EFBFBD> <DEB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѯ<EFBFBD> <D1AF> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD> ӦΪ<D3A6> ա <EFBFBD> " ) ;
return ;
}
2024-11-13 21:52:56 +08:00
try
{
2024-11-15 12:09:52 +08:00
// ʹ <> <CAB9> Newtonsoft.Json <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ
SelectUserInfoResponse userInfoResponse = JsonConvert . DeserializeObject < SelectUserInfoResponse > ( response ) ;
2024-11-13 21:52:56 +08:00
2024-11-15 12:09:52 +08:00
// <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݸ<EFBFBD> ֵ<EFBFBD> <D6B5> ȫ<EFBFBD> ֱ<EFBFBD> <D6B1> <EFBFBD>
code = userInfoResponse . code ;
message = userInfoResponse . message ;
2024-11-13 21:52:56 +08:00
2024-11-15 12:09:52 +08:00
if ( userInfoResponse . data ! = null )
2024-11-13 21:52:56 +08:00
{
2024-11-15 12:09:52 +08:00
userId = userInfoResponse . data . userId ;
userName = userInfoResponse . data . userName ;
nickName = userInfoResponse . data . nickName ;
headImg = userInfoResponse . data . headImg ;
gender = userInfoResponse . data . gender ;
birthday = userInfoResponse . data . birthday ;
voluteCoin = userInfoResponse . data . voluteCoin ;
beansCoin = userInfoResponse . data . beansCoin ;
ichorCoin = userInfoResponse . data . ichorCoin ;
cuteNo = userInfoResponse . data . cuteNo ;
Debug . Log ( $"<22> <> ѯ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> Ϣ<EFBFBD> ɹ<EFBFBD> <C9B9> <EFBFBD> <EFBFBD> û<EFBFBD> ID: {userId}, <20> û<EFBFBD> <C3BB> <EFBFBD> : {userName}, <20> dz<EFBFBD> : {nickName}, <20> Ա<EFBFBD> : {(gender == 1 ? " <EFBFBD> <EFBFBD> " : " Ů ")}, " +
$"<22> Ͽ<EFBFBD> : {voluteCoin}, <20> ϵ<EFBFBD> : {beansCoin}, <20> <> Һ: {ichorCoin}, <20> <> <EFBFBD> <EFBFBD> : {cuteNo}" ) ;
2024-11-13 21:52:56 +08:00
}
else
{
2024-11-15 12:09:52 +08:00
Debug . LogWarning ( "<22> <> <EFBFBD> ݶ<EFBFBD> <DDB6> <EFBFBD> Ϊ<EFBFBD> գ <EFBFBD> <D5A3> <EFBFBD> <DEB7> <EFBFBD> ȡ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> ϸ<EFBFBD> <CFB8> Ϣ" ) ;
2024-11-13 21:52:56 +08:00
}
}
2024-11-15 12:09:52 +08:00
catch ( System . Exception e )
2024-11-13 21:52:56 +08:00
{
2024-11-15 12:09:52 +08:00
Debug . LogWarning ( "<22> <> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѯ<EFBFBD> <D1AF> Ӧʱ<D3A6> <CAB1> <EFBFBD> <EFBFBD> : " + e . Message ) ;
2024-11-13 21:52:56 +08:00
}
}
void OnDestroy ( )
{
// ע<> <D7A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> й©
LoginAndGetToken . OnTokenReceived - = HandleTokenReceived ;
2024-11-14 18:09:37 +08:00
selectLatest511 . OnGameEscapeIdUpdated - = HandleGameEscapeIdUpdated ;
2024-11-13 21:52:56 +08:00
2024-11-15 12:09:52 +08:00
// ȡ<> <C8A1> <EFBFBD> <EFBFBD> ť<EFBFBD> ĵ<EFBFBD> <C4B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2024-11-13 21:52:56 +08:00
if ( selectUserInfoButton ! = null )
{
selectUserInfoButton . onClick . RemoveListener ( OnSelectUserInfoButtonClicked ) ;
}
}
}
2024-11-15 12:09:52 +08:00
// <20> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѯ<EFBFBD> <D1AF> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD> <EFBFBD> ࣬<EFBFBD> <E0A3AC> <EFBFBD> ڴ洢<DAB4> <E6B4A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD>
public class SelectUserInfoResponse
{
public int code { get ; set ; } // <20> <> <EFBFBD> <EFBFBD> ״̬<D7B4> 룬<EFBFBD> <EBA3AC> <EFBFBD> <EFBFBD> 200 <20> <> ʾ <EFBFBD> ɹ<EFBFBD>
public string message { get ; set ; } // <20> <> ʾ <EFBFBD> <CABE> Ϣ
public UserInfo data { get ; set ; } // <20> û<EFBFBD> <C3BB> <EFBFBD> Ϣ
}
// <20> û<EFBFBD> <C3BB> <EFBFBD> Ϣ<EFBFBD> <CFA2> <EFBFBD> <EFBFBD> <EFBFBD> ࣬<EFBFBD> <E0A3AC> <EFBFBD> ڴ洢<DAB4> û<EFBFBD> <C3BB> <EFBFBD> ϸ<EFBFBD> <CFB8> Ϣ
public class UserInfo
{
public int userId { get ; set ; } // <20> û<EFBFBD> ID
public string userName { get ; set ; } // <20> û<EFBFBD> <C3BB> <EFBFBD>
public string nickName { get ; set ; } // <20> dz<EFBFBD>
public string headImg { get ; set ; } // ͷ<> <CDB7>
public int gender { get ; set ; } // <20> Ա<EFBFBD> <D4B1> <EFBFBD> 1 <20> <> ʾ <EFBFBD> У <EFBFBD> 2 <20> <> ʾ Ů
public string birthday { get ; set ; } // <20> <> <EFBFBD> <EFBFBD>
public int voluteCoin { get ; set ; } // <20> Ͽ<EFBFBD>
public int beansCoin { get ; set ; } // <20> <> ţ<EFBFBD> <C5A3>
public int ichorCoin { get ; set ; } // <20> <> Һ
public int cuteNo { get ; set ; } // <20> <> <EFBFBD> <EFBFBD>
}