我在堆栈溢出时得到了这个QA - How to call code behind server method from a client side javascript function?
然而,它是从javascript调用函数,我怎么能从c#中执行。我使用 unity3d 来开发ios应用程序,我以前没有这样做过。有人知道怎么做吗?
提前致谢。
后端给出如下所示的内容。 url:https:// {服务器地址} /注册 paramters:
并返回: - user_id,int
我使用正确的参数运行服务器方法,如果参数正确,则返回 int / user_id 返回。
答案 0 :(得分:1)
WWW unity3d Class,这可能就是你想要的。 WWW是
一个小型实用程序模块,用于检索URL的内容。
有关使用C#进行与服务器(PHP)交互的详细信息,我将建议您unitywiki link。您将需要像本教程所建议的那样执行此类操作。
IEnumerator GetData()
{
gameObject.guiText.text = "Loading Scores";
WWW hs_get = new WWW(highscoreURL);//highscoreURL this is ur url as u said
yield return hs_get;
if (hs_get.error != null)//checking empty or error response etc
{
print("There was an error getting the high score: " + hs_get.error);
}
else
{
gameObject.guiText.text = hs_get.text; // this is a GUIText that will display the scores in game.
}
}
根据您的规范可以自定义的重置事项是使用Co-routine的WWW。
答案 1 :(得分:0)
从表面上看,将WWWForm
作为辅助参数添加到WWW
,然后it is a post
to server.
using UnityEngine;
using System.Collections;
public class PostJsonDataScript : MonoBehaviour
{
// Use this for initialization
string Url;
void Start()
{
Url = "Url to the service";
PostData(100,"Unity");
}
// Update is called once per frame
void Update()
{
}
void PostData(int Id,string Name)
{
WWWForm dataParameters = new WWWForm();
dataParameters.AddField("Id", Id);
dataParameters.AddField("Name", Name);
WWW www = new WWW(Url,dataParameters);
StartCoroutine("PostdataEnumerator", Url);
}
IEnumerator PostdataEnumerator(WWW www)
{
yield return www;
if (www.error != null)
{
Debug.Log("Data Submitted");
}
else
{
Debug.Log(www.error);
}
}
}