| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- using UnityEngine.Networking;
- using Newtonsoft.Json;
- using System.Text;
- using System;
- public class JsonUploader.cs : BaseSceneManager<JsonUploader>
- {
- private const string authURL = @"http://192.168.10.211:4050/auth/student";
- // ==================================================
- public void Auth(string value) => StartCoroutine(AuthAction(value));
- private IEnumerator AuthAction(string value)
- {
- AuthData authData = new AuthData();
- authData.internalId = value;
- string json = JsonConvert.SerializeObject(authData);
- // 上传json的方法
- // 上传bytes否则jsonbody会被误作为head
- using (UnityWebRequest www = new UnityWebRequest(authURL, UnityWebRequest.kHttpVerbPOST))
- {
- www.SetRequestHeader("Content-Type", "application/json");
- www.SetRequestHeader("Accept", "application/json");
- byte[] bytes = Encoding.UTF8.GetBytes(json);
- www.uploadHandler = new UploadHandlerRaw(bytes);
- DownloadHandler downloadHandler = new DownloadHandlerBuffer();
- www.downloadHandler = downloadHandler;
- yield return www.SendWebRequest();
- if (www.result != UnityWebRequest.Result.Success)
- {
- Debug.Log($"{www.error}...<color=red>[ER]</color>");
- yield break;
- }
- else
- {
- Debug.Log(www.downloadHandler.text);
- ResponAuthData responAuthData = JsonConvert.DeserializeObject<ResponAuthData>(www.downloadHandler.text.ToString());
- if (responAuthData.code == 0)
- {
- PlayerManager.Instance.SetPlayerPrefsStudentID(value);
- }
- else
- {
- }
- }
- }
- yield break;
- }
- // ==================================================
- [Serializable]
- public class AuthData
- {
- public string internalId;
- }
- [Serializable]
- public class ResponAuthData
- {
- public int code;
- public string data;
- }
- }
|