ID Token 요청에 client_secret이 필요하기 때문에 (보안이슈)
서버를 한 번 경유하기 위한 RequestTokenFromServer 로 대체되어 사용하지 않게 된 스크립트
private async Task ExchangeCoroutine(string code)
{
try
{
await Awaitable.MainThreadAsync();
Debug.Log("토큰 요청 시작");
WWWForm form = new WWWForm();
form.AddField("code", code);
form.AddField("client_id", clientId);
form.AddField("redirect_uri", redirectUri);
form.AddField("grant_type", "authorization_code");
UnityWebRequest req = UnityWebRequest.Post("https://oauth2.googleapis.com/token", form);
Debug.Log("UnityWebRequest 생성 완료");
await req.SendWebRequest();
if (req.result != UnityWebRequest.Result.Success)
{
Debug.LogError($"Token 요청 실패: {req.error}");
Debug.Log(req.downloadHandler.text);
return;
}
string result = req.downloadHandler.text;
JObject obj = JObject.Parse(result);
string idToken = obj["id_token"]?.ToString();
Debug.Log($"ID Token 얻음: {idToken}");
await FirebaseLogin(idToken);
}
catch (Exception ex)
{
Debug.LogError($"토큰 교환 도중 예외 발생: {ex}");
}
}
'Dev > Unity(C#)' 카테고리의 다른 글
[Unity] 민감한 내용을 포함한 프로젝트의 깃허브 업로드 '.env' (0) | 2025.04.03 |
---|---|
유니티 VFX Mesh 의 인스펙터에서 Surface Options가 보이지 않는 문제 (0) | 2024.11.11 |
유니티 vfx graph 에서 셰이더 그래프를 사용할 수 없는 문제 (1) | 2024.11.11 |
[UI Toolkit] 일반적으로 런타임 중 UXML(VisualTreeAsset)의 동적 생성은 불가능 (0) | 2024.08.17 |
UI Toolkit, Height 사이즈 조정이 안되는 문제 (0) | 2024.07.20 |