我正在考虑将一个 JavaScript 网络应用程序移植到 C# Unity3D(免费/个人版)以用于我正在开发的角色扮演游戏。我有一个在 PHP Laravel 5.1 中构建的可扩展的独立 API,我的游戏通过 jQuery http 调用与之交互。
我需要继续进行标准的 restful 调用,get
、post
、put
、delete
等Unity 但只找到了 UnityEngine.WWW#
,它可以生成 gets
和 posts
。
This SO Post共享其他可用的 Unity3D http 方法,但没有一个真正将所有 RESTful 调用合而为一。我再次询问,因为这是在 2012 中发布的,我在 updated documentation 中没有找到满足此要求的任何更新。 .
有Best HTTP Basic和 Best HTTP 45 美元和 55 美元,但我认为还有其他免费选择。
我是否在 Unity 中遗漏了一些允许标准的 restful 调用的东西?
最佳答案
WebClient
和 WebRequest
都在 Unity 中可用,看起来它只能与 Pro Unity 版本一起使用,就像 System.Net< 中的任何其他 API 一样
命名空间。我不知道这个限制在 Unity 5 中是否已经改变。他们支持你问题中提到的所有那些 Restful 电话。
Unity 添加了一个名为 UnityWebRequest 的新 API在 5.2 版本中,在 5.3 中支持移动平台。它旨在取代 WWW
并且它支持所有 您问题中列出的 restfull 调用。以下是每个示例。这不是一个完整的例子。您可以在我上面提供的链接中找到完整示例。
//Get
UnityWebRequest get = UnityWebRequest.Get("http://www.myserver.com/foo.txt");
//Post
UnityWebRequest post = UnityWebRequest.Post("http://www.myserver.com/foo.txt","Hello");
//Put
byte[] myData = System.Text.Encoding.UTF8.GetBytes("This is some test data");
UnityWebRequest put = UnityWebRequest.Put("http://www.my-server.com/upload", myData);
//Delete
UnityWebRequest delete = UnityWebRequest.Delete("http://www.myserver.com/foo.txt");
您可以看到每个示例的完整示例,包括使用 json 发布 here .
关于c# - Unity 3D Puts/Deletes http 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37513244/