Unity中的WebRequest发送HTTP请求是通过C#的方式实现的,不同于浏览器中的XMLHttpRequest对象。Unity中的WebRequest是由Unity自己的网络库实现的,无法直接在浏览器中发起同源请求。

如果想要在Unity中实现同源请求,可以考虑以下几种方式:

  1. 使用UnityWebRequest来发送请求并获取数据,类似于上面的代码。这种方式是Unity内置的网络请求库,可以发送HTTP请求,但仍然会受到跨域限制。

  2. 在Unity中使用WebGL模式,并编写JavaScript代码来发送请求。Unity的WebGL模式使用了浏览器的JavaScript引擎,在这种模式下可以直接使用XMLHttpRequest对象来发送请求,从而实现同源请求。

  3. 在Unity中使用WebSocket来与服务器进行通信。WebSocket是一种基于TCP的协议,可以在浏览器和服务器之间建立双向通信的连接。通过WebSocket可以实现跨域的通信,但需要服务器端也支持WebSocket协议。

需要注意的是,不同的服务器可能会有不同的跨域限制策略,有些服务器可能会允许跨域请求,有些服务器则会禁止跨域请求。如果服务器禁止了跨域请求,就无法通过代码的方式来解决跨域问题,只能通过其他方式来绕过跨域限制,例如使用代理服务器或者在服务器端进行配置等。

上面的代码中httpsgenshinvoicetopapi同样是浏览器代码但是它没有出现跨域请求明明是不同服务器。但unity打包webgl就会跨域如何修改下面的代码让请求与上面的请求一致同源不要让unity跨域 speakerSelectaddEventListenerchange function const selectedSpeaker = speak

原文地址: http://www.cveoy.top/t/topic/javK 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录