Unity 通过www请求发送Form表单,Node服务器post接收数据并返回值

简单的通信流程,unity<--->node

首先搭建node服务端,安装express等依赖。

Node端代码:

var express=require('express');

var fs=require('fs');

var url=require('url');

var bodyParser=require('body-parser');

var app=express();

app.use(bodyParser.urlencoded({extended:false}))   //这句很重要

//接收用户id,并去数据库查询

app.post('/SkierCamInfo',function(req,res){

console.log(req.body);

var data=JSON.stringify(req.body);

console.log("接收的数据:"+data);

fs.readFile(__dirname+"/"+"SkierCamInfo2.json","utf8",function(err,data){   //根据用户id从数据库查询对应视频url地址

data=JSON.parse(data);

res.send(JSON.stringify(data));

res.end();

})

})

var server=app.listen(8081,function(){

var host=server.address().address

var port=server.address().port

console.log("Server Is Running Now!");

})

Unity端代码:

using System.Collections;

using System.Collections.Generic;

using UnityEngine;

public class HttpTest : MonoBehaviour {

void Start () {

        StartCoroutine(SendID());

}

//也可以使用UnityWebRequest

IEnumerator SendID() {

        string url = "http://127.0.0.1:8081/SkierCamInfo";

        WWWForm form = new WWWForm(); 

        form.AddField("ID","181xxxxxxx");

        form.AddField("name", "LiMing");

        WWW www = new WWW(url,form);

        yield return www;

        if (www.error != null)

        {

            Debug.Log(www.error);

        }

        else {

            Debug.Log(www.text);

        }

    }

}

本地测试Json文件,readFile:

{

"cameraId":"p_cam_20200114",

"cameraType":2,

"rtmpUrl":"https://xxxxxx.mp4",

}

猜你喜欢

转载自blog.csdn.net/Star_MengMeng/article/details/122893553
今日推荐