原章创建与2016-03-26 作者 Aries.H
废话不多说,我们先去Unity里创建一个可以输入用户名和密码的登录窗口
然后给登录按钮添加代码
using UnityEngine;using System.Collections;using UnityEngine.UI;public class Login : MonoBehaviour{ //持有用户名和密码这两个输入框的对象 public InputField Username; public InputField Password; //定义访问JSP登录表单的get方式访问路径 private string Url = "http://192.168.31.38:8080/MyUnityToJSPTest/StringContentServlet.do?"; //当按钮被点击 public void LoginButtonOnClick() { //向服务器传递的参数 string parameter = ""; parameter += "UserName=" + Username.text + "&"; parameter += "PassWord=" + Password.text; //开始传递 StartCoroutine(login(Url + parameter)); } //访问JSP服务器 IEnumerator login(string path) { WWW www = new WWW(path); yield return www; //如果发生错误,打印这个错误 if (www.error != null) { Debug.Log(www.error); } else { //如果服务器返回的是true if (www.text.Equals("true")) { //登陆成功 print("Login Success!!!"); Application.LoadLevel("UpLoadFile"); } else { //否则登录失败 print("Login Fail..."); } } }}
将两个面板拖拽给脚本生成实例
然后我们去JSP服务器接收Unity传过来的值
JSP的代码我就不复制过来了,自己打一遍,印象深刻,最好是看懂了背着打。这样才有意义。
然后回到Unity,注册按钮点击事件。。。其实是我自己忘了-------
接着就是运行Unity。
别忘了运行之前把JSP的服务器打开,否则提交不过去会报错的。
点击登录后,去JSP服务器看看控制台,是否已经把我们的用户名和密码输出出来了呢?
我的代码省略的那部分大家可以进行什么注册啊,验证数据库什么的都可以,我个人感觉比Socket实用一些。
好了,注册和登录什么的都是传递字符串,这个我们已经做完了,其实并没有什么难点,那么我们继续回到Unity,开始上传文件的分享。
刚才点击登录按钮后,是否成功进入了上传文件的场景呢?
下面我们来编辑一下上传的场景
编辑模式下,给上传文件的按钮添加代码,注册点击事件
using System;using System.IO;using UnityEngine;using System.Collections;public class UpFile : MonoBehaviour{ //持有三个状态面板的对象 public GameObject upFileing; public GameObject successPanel; public GameObject failPanel; //定义访问JSP登录表单的post方式访问路径 private string Url = "http://192.168.31.39:8080/MyUnityToJSPTest/ByteFileContentServlet.do"; //点击上传按钮 public void OnUpFileButtonClick() { //设置上传文件中面板为显示状态 upFileing.SetActive(true); //上传本地文件 StartCoroutine(UpFileToJSP(Url, Application.dataPath + "midi.txt")); } //访问JSP服务器 private IEnumerator UpFileToJSP(string url, string filePath) { WWWForm form=new WWWForm(); form.AddBinaryData("midiFile