如何使用Unity在C#中发送HTTP GET和POST请求?
我想要的是:
我尝试过的:
大多数问题都是使用线程,我在C#中没有足够的经验.我使用的文本编辑器是Intellij Rider.
问题:
我想在完成下载文件之前获取 assetBundle 的大小。我可以向用户显示剩余时间。在Unity2018.2中,我们可以获取让我乘以进度的文件大小或下载文件大小吗?或者还有其他方法来计算剩余时间?
我知道WWW.responseHeaders包含该信息,但似乎需要完成下载。
这是我目前的代码。
using (WWW downloadPackageWWW = new WWW(pkg.url))
{
while (!downloadPackageWWW.isDone)
{
print("progress: " + downloadPackageWWW.progress * 100 + "%");
yield return null;
}
if (downloadPackageWWW.error != null)
print("WWW download had an error:" + downloadPackageWWW.error);
if (downloadPackageWWW.responseHeaders.Count > 0)
print(pkg.fileName + ": " + downloadPackageWWW.responseHeaders["Content-Length"]+" byte");
byte[] bytes = downloadPackageWWW.bytes;
File.WriteAllBytes(pkgPath, bytes);
}
Run Code Online (Sandbox Code Playgroud)
--
更新:
为了获得剩余时间,我提出了一个理想的方法,通过Time.deltaTime来计算,并且我们不需要知道总文件大小和下载速度。
float lastProgress = 0;
while (!www.isDone)
{
float deltaProgress …
Run Code Online (Sandbox Code Playgroud)