如何使用 Unity3d 连接到本地解析服务器?
Posted
技术标签:
【中文标题】如何使用 Unity3d 连接到本地解析服务器?【英文标题】:How to connect to a local parse-server with Unity3d? 【发布时间】:2016-01-29 15:58:35 【问题描述】:我需要从 Parse.com 迁移到我自己的 Parse 服务器。如何通过我的服务器 URL 在我的 Unity 项目上初始化 Parse SDK? Unity Editor 上唯一可编辑的变量是ApplicationId
和DotNetKey
。我看到了一个 .Net 示例,我可以在应用程序初始化时传递 serverUrl
(见下文),但在 Unity 上我找不到这个选项:
ParseClient.initialize(new ParseClient.Configuration
ApplicationId = "YOUR_APP_ID",
ClientKey = "YOUR_APP_CLIENT_KEY",
Server = "http://localhost:1337/parse"
);
我发现Parse.ParseClient
类有一个内部HostName
变量。如何通过反射访问它?我试过了:
typeOf(ParseClient)
但这会返回
未知类型:Parse.ParseClient
【问题讨论】:
他们正在关闭,所以为什么要创建依赖它的东西 您找到解决方案了吗? @Elltz,这不是重定向到另一台服务器的正确方法吗?我在互联网上找到的,它的正确方法。如果没有,您能否指定如何正确迁移它?谢谢。 我找到了一种使用反射的方法,我回家后可以发布代码,但我所做的是:扩展 parseInitializer 类并使用反射来更改 ServerURL 参数。 感谢您的回复。我会等你的代码。 【参考方案1】:**************解决方案********************
public class ParseInitializer : ParseInitializeBehaviour
[SerializeField] public string hostURL;
public override void Awake()
var assembly = Assembly.GetAssembly(typeof(ParseInitializeBehaviour));
var type = assembly.GetType("Parse.ParseClient");
var prop = type.GetProperty("HostName", BindingFlags.Static
| BindingFlags.NonPublic);
Uri uri = new Uri(hostURL;);
prop.SetValue(type, uri, null);
var s = (Uri)prop.GetValue(type, null);
base.Awake();
【讨论】:
【参考方案2】:您引用的文档有错字。它的 ParseClient.Initialize 使用大写的 I。如果你有正确的 #using Parse;在您的代码中,它不应标记错误。
【讨论】:
以上是关于如何使用 Unity3d 连接到本地解析服务器?的主要内容,如果未能解决你的问题,请参考以下文章
如何通过 Swift 连接到本地 Firebase 服务器?
如何使用 python 从 azure databricks notebook 连接到本地 Windows 服务器?