问题标签 [unitywebrequest]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - UnityWebRequest - 为节奏游戏加载许多音频文件很慢
在 LoadFile.cs 中加载音频的函数:
调用 TrackLoader.cs 中的函数:
用户可以在我正在开发的节奏游戏中创建自己的自定义关卡,这意味着他们可以导入自己的音频、歌曲的艺术等。我使用上述方法加载音频(与图像的加载方式基本相同)。
当我运行它时,在我的好计算机上加载一个 4 分钟的 *.mp3 大约需要300-450 毫秒。在游戏中,当我进入歌曲选择场景时加载歌曲可能需要几分钟,这太长了。我不确定如何实施更好的解决方案。
诸如 osu!mania 和 Quaver 之类的游戏可以即时访问音乐,我最好的猜测是音乐正在流式传输,而不是一次全部加载然后播放。
我试图谷歌如何做到这一点,但我很难过。我怎样才能加快这个过程?
如果有什么我错过的,我很乐意提供任何东西。
需要这个的原因:为了能够在歌曲选择中预览歌曲。
我知道这可能存在设计缺陷,例如在切换到歌曲选择场景之前没有后台加载,加载点击的内容等。但是,即使实现了这些,我相信它不会达到我需要的速度,例如如何使用 Quaver有它。我不知道为什么 FPS 如此之低,以及为什么即使在退出播放模式后调试器也会继续运行。
http - 当 HttpClient、浏览器和邮递员都成功时,Unity 的 UnityWebRequest GET 对 http://localhost:8000 失败?服务器在 Rust:Rocket
为了简短起见,尝试让 Unity 客户端工作。它正在向“http://localhost:8000/api/board”发出一个简单的 Get 请求。此请求工作正常:
- 在我的浏览器中
- 邮差
- .net 在 Unity 编辑器模式下的 HttpClient
- 如果我构建并运行 WebGL 构建,则生成的网页将起作用(必须首先将 CORS 设置添加到服务器)
它不适用于 Unity 编辑器模式下的 UnityWebRequest,尽管这非常令人沮丧,但构建 webgl 需要很长时间。
我不知道为什么它不起作用。“https://httpbin.org/get”等其他路由在编辑器模式下工作正常。我觉得它与UnityWebRequest有关。我也试过关闭防火墙。我正在使用 Unity 2021.2.7f1,这一切都是在为 windows 构建时在编辑器中运行的。
下面工作正常:
以下失败并显示“无法连接到目标主机”错误响应:
编辑:
使固定
原来问题出在我用 Rust Rocket 制作的服务器上。我把它设置为默认值address = "localhost"
。我将其更改为address = "0.0.0.0"
,现在它在编辑器播放模式下工作正常。我不知道为什么 0.0.0.0 工作但 localhost 没有。
.net - 在 Unity 中向 localhost 发送数据和从 localhost 接收数据导致“IOException: Too many open files”错误
为了测试我的 Unity 应用程序的网络部分,我有一个根据键盘输入移动的“模仿”游戏对象。网络管理器组件 (1) 获取“模仿者”的移动数据并使用 PUT 将其发送到 node.js 本地主机服务器,并且 (2) 从本地主机取回并将其应用于“模仿者”对象。该程序运行良好,但过了一会儿我得到了错误:
Unity 编辑器中还弹出一个窗口,提示“打开文件失败”,然后编辑器崩溃。我认为这是由于内存没有正确处理造成的,但还没有弄清楚究竟是如何处理的。这是游戏管理器代码:
网络管理器.cs
此外,node.js 后端没有记录错误。
后端.js
感谢你的帮助!
c# - UnityWebRequestTexture.GetTexture() Web 请求没有得到服务器的响应,可能是 CORS 问题?
我有一个 Unity 项目,我试图从网站上抓取图像,但我尝试从中下载图像的一些 URL 不起作用。例如,如果我尝试将此 URL 与 UnityWebRequestTexture.GetTexture() 一起使用(https://cdn.shopify.com/s/files/1/1963/1339/files/G20-full-right-front.jpg)我可以下载图片,但如果我使用这个 URL ( https://pisces.bbystatic.com/image2/BestBuy_US/images/products/6427/6427116_sd.jpg ) 我什么也得不到
我已经在调试器中逐步完成了代码,当我调用 www.SendWebRequest(); 它永远不会返回,所以我永远不会收到 HTTP 错误或响应。
这是我的代码:
我猜有某种 CORS 问题或某种 SSL 证书问题。但我不知道我能做些什么来解决这些问题。
unity3d - 用于graphql请求(UnityWebRequest)的heroku日志中的密码字段显示为纯文本
我有一个具有以下技术堆栈的应用程序
- React 中的 Web 前端应用程序
- 使用 Python/Django 的后端
- GraphQL API 使用 graphene + django-graphql-auth进行身份验证
- 数据库
- 托管在 Heroku 上
除此之外,另一个第三方应用程序也使用后端,该应用程序对其进行身份验证并发送数据以跟踪 VR 应用程序中的活动。
我意识到在 heroku 日志中,来自 VR APP(使用 Unity 制作)的所有请求都以纯文本形式显示密码字段。如果我尝试通过 Web 应用程序登录,则不会发生这种情况。
解码相关部分以获得更高的可读性:
鉴于这种情况,我认为从 Unity 发送请求的方式是罪魁祸首。问题是我不是 Unity 开发人员,也不知道如何解决这个问题。我什至无法访问代码,因为它属于另一个团队。而且我认为那里的统一开发人员通常也不熟悉处理 Web 请求,所以我不知道如何在 Web 部件上正确引导它们。如果人们发现有必要帮助跟踪问题,我可以要求他们在此处发布任何相关代码。
unity3d - unity WebRequest - Windows 安全
大家好,我在使用 Windows 防病毒软件时遇到问题我从 IPFS 下载了一个 zip 文件我的代码:
如果我禁用我的 Windows 防御者,它工作正常。但是如果我的 Windows 安全启用了,文件会被阻止或损坏,我怎样才能表明该文件不是病毒。我不能告诉我的用户禁用他们的杀毒软件!请帮忙,谢谢。
c# - 在主线程中启动协程
所以我试图执行一个UnityWebrequest,它需要从一个协程开始。现在尝试在某个时候调试所有内容,我发现从 Start 函数调用 Coroutine 是可行的(接收 Debug.Log 消息),但是从普通函数调用它将不起作用(我没有收到 内的调试消息GetRequest
)。
因此我认为由于某种原因协程没有在主线程上运行(因为也没有出现错误)。
有人知道我如何强制协程在主线程上运行或解决我的问题吗?
在这里,您将找到WebGet
从不在 Monobehaviour 中的类调用的代码,但包含的类WebGet & GetRequest
是。
(请忽略其中的请求变量,WebGet
这将用于稍后阶段。