c#
를 사용하여 Unity로 http 요청을 보내십시오.]Unity는 개발자가 인터넷을 통해 데이터를 효율적으로 교환 할 수있는 사용자 정의 가능한 네트워킹 기능을 제공합니다. 이 안내서는 Get 및 Post 작업을 다루는 C# 및 Unity의 현재 네트워크 API)를 사용하여 Unity로 HTTP 요청을 보내는 방법에 대한 포괄적 인 개요를 제공합니다.
요청 받기
]GET 요청은 서버에서 데이터를 검색하는 데 사용됩니다. UnityWebRequest를 사용하여 GET 요청을 보내려면 다음 코드를 사용하십시오.
IEnumerator GetRequest(string uri)
{
UnityWebRequest uwr = UnityWebRequest.Get(uri);
yield return uwr.SendWebRequest();
if (uwr.isNetworkError)
{
Debug.Log("发送错误: " uwr.error);
}
else
{
Debug.Log("接收: " uwr.downloadHandler.text);
}
}
post request
]]]Post Request는 데이터를 서버로 보내는 데 사용됩니다. 양식 데이터 및 JSON 데이터를 보낼 수 있습니다.
양식 데이터를 사용한 게시물 요청
]IEnumerator PostRequest(string url)
{
WWWForm form = new WWWForm();
form.AddField("myField", "myData");
form.AddField("Game Name", "Mario Kart");
UnityWebRequest uwr = UnityWebRequest.Post(url, form);
yield return uwr.SendWebRequest();
if (uwr.isNetworkError)
{
Debug.Log("发送错误: " uwr.error);
}
else
{
Debug.Log("接收: " uwr.downloadHandler.text);
}
}
JSON 데이터를 사용한 게시물 요청
]IEnumerator PostRequest(string url, string json)
{
var uwr = new UnityWebRequest(url, "POST");
byte[] jsonToSend = new System.Text.UTF8Encoding().GetBytes(json);
uwr.uploadHandler = (UploadHandler)new UploadHandlerRaw(jsonToSend);
uwr.downloadHandler = (DownloadHandler)new DownloadHandlerBuffer();
uwr.SetRequestHeader("Content-Type", "application/json");
yield return uwr.SendWebRequest();
if (uwr.isNetworkError)
{
Debug.Log("发送错误: " uwr.error);
}
else
{
Debug.Log("接收: " uwr.downloadHandler.text);
}
}
multipart form data/multipart 양식 파일을 사용한 게시물 요청
]IEnumerator PostRequest(string url)
{
List formData = new List();
formData.Add(new MultipartFormDataSection("field1=foo&field2=bar"));
formData.Add(new MultipartFormFileSection("my file data", "myfile.txt"));
UnityWebRequest uwr = UnityWebRequest.Post(url, formData);
yield return uwr.SendWebRequest();
if (uwr.isNetworkError)
{
Debug.Log("发送错误: " uwr.error);
}
else
{
Debug.Log("接收: " uwr.downloadHandler.text);
}
}
풋 요청
]IEnumerator PutRequest(string url)
{
byte[] dataToPut = System.Text.Encoding.UTF8.GetBytes("Hello, This is a test");
UnityWebRequest uwr = UnityWebRequest.Put(url, dataToPut);
yield return uwr.SendWebRequest();
if (uwr.isNetworkError)
{
Debug.Log("发送错误: " uwr.error);
}
else
{
Debug.Log("接收: " uwr.downloadHandler.text);
}
}
삭제 요청 삭제
]IEnumerator DeleteRequest(string url)
{
UnityWebRequest uwr = UnityWebRequest.Delete(url);
yield return uwr.SendWebRequest();
if (uwr.isNetworkError)
{
Debug.Log("发送错误: " uwr.error);
}
else
{
Debug.Log("已删除");
}
}
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3