私はUnityゲームで、フォームデータをPOSTでサーバーに送信しようとしているかなり基本的なスクリプトを持っています。しかし、団結は無期限にフリーズ/ハングするようです。私はなぜこれが起こっているのか混乱しているので、私は問題を解決する方法を知らない。 Unityを持つHTTPクライアント、アプリケーションがハング
は私が緩く、この記事で次のように私のコードを作っ: https://docs.microsoft.com/en-us/dotnet/csharp/tutorials/console-webapiclient#making-web-requests私のサーバーが要求を受信ず、1人の背中を書きありません。しかし、統一が凍っているので、現時点では本当に使えません。
私のクラスには、次のようになります。
public class HTTPManager : MonoBehaviour
{
private static HttpClient client = new HttpClient();
private void Awake()
{
client.BaseAddress = new Uri("http://localhost:8080/");
ProcessRepositories().Wait();
}
private async Task ProcessRepositories()
{
client.DefaultRequestHeaders.Accept.Clear();
FormUrlEncodedContent content = new FormUrlEncodedContent(new[]
{
new KeyValuePair<string, string>("u", "test")
});
//this goes to http://localhost:8080/hello with POST u=test
HttpResponseMessage result = await client.PostAsync("hello",content);
Debug.Log("Is Success: "+result.IsSuccessStatusCode);
Debug.Log("Status code: "+result.StatusCode);
Debug.Log("Reason Phrase: "+result.ReasonPhrase);
Debug.Log("Headers: "+result.Headers);
Debug.Log("Content: "+result.Content);
Debug.Log("Request Message: "+result.RequestMessage);
Debug.Log("Version: "+result.Version);
}
}
をぶら下げ問題を引き起こしていただきました!?
[WWW](https://docs.unity3d.com/ScriptReference/WWW.html)クラスを使用して、あなたはコルーチンでそれを使用することができ、歩留まりそれを返す、団結とのHttpClientを使用しないでください。また、ダウンロードが完了するのを待ちます。 –
コルーチンと非同期のものは何ですか? – Sir
https://forum.unity.com/threads/coroutine-vs-async-method.483746/ –