Unity3d + WebGL = 跨源请求被阻止

2023-12-02

我想知道是否有人可以简要解释如何让 REST api 与构建到 WebGL 平台的 Unity3D 项目一起运行。我今天刚刚开始更改我的项目,认为我可以使用 REST 来解决 Parse 在我需要制作的 WebGL 构建中使用线程的问题。我很快就遇到了 CORS 问题,但由于不熟悉它,我不确定如何解决该问题。

目前,我使用 WWW 类从 Unity 中发送请求。

用户“登录”的示例如下:

        WWWForm form = new WWWForm();

        var headers = form.headers;
        headers["Method"] = "GET";
        headers["X-Parse-Application-Id"] = AppID;
        headers["X-Parse-REST-API-Key"] = RestID;
        headers["X-Parse-Revocable-Session"] = "1";
        headers["Content-Type"] = "application/json";

        WWW www = new WWW("https://api.parse.com/1/login?username="+name+"&password="+password, null, headers);

这在编辑器中工作正常,但在构建到 WEBGL 并上传到 Parse 的我的主机后,会发生以下情况......

我在 FireFox 中收到以下错误:

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://api.parse.com/1/login?username=jleslie5159&password=Osulator5159!. This can be fixed by moving the resource to the same domain or enabling CORS.

Chrome 中也有类似的东西......


对于其他人来说,我解决了我的问题,如下所示:

WWWForm form = new WWWForm();
        var headers = form.headers;
        headers["X-Parse-Application-Id"] = "AppId";
        headers["X-Parse-REST-API-Key"] = "RestKey";
        headers["Content-Type"] = "application/json";
        WWW www = new WWW("https://api.parse.com/1/login?username="+name+"&password="+password, null, headers);
        while(!www.isDone)
            yield return 1;

该问题源于设置“headers[“Method”] =“GET””显然只允许发送某些标头,否则会触发 CORS 违规。我通过阅读浏览器控制台中的响应解决了该问题,该响应指定了请求被阻止的原因。并且刚刚删除了有问题的标头。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Unity3d + WebGL = 跨源请求被阻止 的相关文章

  • 在 Android 中将图像从可绘制图像转换为字节数组

    由于我要将图像发送到 Parse com 因此我必须将其转换为字节数组 我的第一种方法是从图库中选择图像并将其转换为字节数组 如下所示 Override protected void onActivityResult int request
  • Facebook Unity Sdk v5.0.3 尝试登录时在横向模式下崩溃 - Android

    当我在横向模式下单击登录按钮时 游戏崩溃 如果我使用纵向模式 一切都会正常工作 当我崩溃时 我从 bugsense 得到了以下堆栈跟踪 java lang RuntimeException Unable to start activity
  • 如何在 Parse Cloud 代码中访问 Facebook Graph API?

    我需要在云函数中获取在我的 Parse 应用程序中使用 Facebook 登录的用户的好友 我怎样才能实现这个目标 我尝试安装facebook node sdk https github com Thuzi facebook node sd
  • Unity wiki 的 Singleton 是如何工作的?

    我的场景中有一个 经理 游戏对象 其中有一个Manager附加到它的脚本组件 我需要这个Manager脚本成为单例因为有多个经理是没有意义的 我使用了单例实现来自 Unity 维基 http wiki unity3d com index p
  • 从列表中获取数组而不进行堆分配

    我有一个列表 我想将其数组分配给一个属性 public void BuildMesh List
  • 在哪里放置 parse.initialize()

    我目前正在与一个小团队一起在 iOS 和 Android 上构建一个应用程序 尽管现在我只专注于 Android 在他们的网站教程上 他们很早就说了以下几行 在继续之前 请从右侧菜单中选择您的 Parse 应用程序 这些步骤适用于您的 Na
  • Access-Control-Allow-Headers 不允许请求标头字段 Access-Control-Allow-Headers

    我试图通过发布请求将文件发送到我的服务器 但是当它发送时会导致错误 Access Control Allow Headers 不允许请求标头字段 Content Type 所以我用谷歌搜索了错误并添加了标题 http post rootSc
  • Unity 检查 Toggle 是否打开

    我正在检查开关是否打开 通常我使用public Toggle myToggle在检查器中 但这我将脚本附加到Toggle并且可能错误地使用GetComponent
  • Access-Control-Allow-Origin值跨站缓存

    我正在尝试编写一个 nginx 配置来处理 http 和 https 上的两个站点 只要客户端从不访问这两个站点 它似乎就可以工作 但如果它们这样做 就会出现缓存 跨站点问题 Allow cross origin location eot
  • 为什么当实例化新的游戏对象时,它没有向它们添加标签? [复制]

    这个问题在这里已经有答案了 using System Collections using System Collections Generic using UnityEngine public class Test MonoBehaviou
  • 使用 Protobuf-net,我收到有关 List 未知线路类型的异常

    我已经开始将 Unity iOS 游戏转换为使用 Protobuf net 保存状态 看起来一切正常 直到我将此实例变量添加到GameState ProtoMember 10 public List
  • 在 xcode 中找不到 AppDelegate.m

    我目前正在尝试将 Facebook SDK 实现到我的 Unity 应用程序中 但我找不到AppDelegate m我必须修改它才能实现 SDK 我尝试在 Xcode 文件夹中到处搜索 但似乎无处可寻 我也在谷歌上搜索 但因为我真的不明白
  • 在 Unity3D 中使用 GraphicsMagick

    我正在寻找在 Unity3D 中使用 System Drawing 的替代方案 因为显然 Unity 不支持它 我想简单地在纹理上画一些线 但我想要诸如线宽和边缘圆角之类的选项 这些选项相当复杂 GraphicsMagick 看起来很完美
  • CORS 和 ASP.Net Web API

    我正在尝试在 asp net web api 中设置 CORS 我的 WebApiConfig cs 是 using System using System Collections Generic using System Linq usi
  • Android和Unity 3D游戏开发

    我开始探索使用 Unity 3d for android 进行游戏开发 我已经下载了unity 3 3的试用版 我浏览了一些教程 我有一个问题没有得到解答 在我们使用eclipse开发的普通应用程序中 我们可以通过复制apk文件来部署到手机
  • 如何遍历对象的所有字段

    我有一个大约有 23 列的对象 有没有办法自动遍历每一列 而不是使用专门选择每一列 get COLUMN NAME 多谢你们 也就是说一个Class A 和fields id createdAt updatedAt a b c and ob
  • 使用位于其他域的 JS 工作文件构建“工作人员”失败

    我在用反应 pdf https www npmjs com package react pdf在我的 Django Wagtail 网站上内联渲染 PDF 文件 为此 我在 HTML 模板中创建一个 ID 为 React 的 div 然后运
  • 如何使用签名网址将文件上传到谷歌云存储桶

    我正在开发一个 Angular 应用程序 用于显示谷歌云存储桶的内容 对于后面 我在nodeJS中使用谷歌云功能 正如他们在上传文件的文档中提到的 我创建了一个函数来生成签名 url 但是当我使用签名 url 发送文件时 我在浏览器中收到了
  • 使用Physics.Raycast 和Physics2D.Raycast 检测对象上的点击

    我的场景中有一个空的游戏对象 带有 2D 组件盒碰撞器 我将脚本附加到该游戏对象 void OnMouseDown Debug Log clic 但是当我点击我的游戏对象时 没有任何效果 你有什么想法 如何检测我的盒子碰撞器上的点击 使用光
  • 适用于 HTML5 混合应用程序的 CORS

    我读过很多关于 CORS 的文章 以及允许 Access Control Allow Origin 如何成为 Web 服务器的安全漏洞 但没有一篇文章解释了如何允许 HTML5 混合应用程序访问某些不允许使用通配符 的域上托管的 Web 服

随机推荐