国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Unity UnityWebRequest使用http與web服務(wù)器通訊

這篇具有很好參考價(jià)值的文章主要介紹了Unity UnityWebRequest使用http與web服務(wù)器通訊。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一、搭建客戶端與服務(wù)器http通訊

1.在Nodejs中文官網(wǎng)Node.js 中文網(wǎng) (nodejs.com.cn),下載并安裝Nodejs

Unity UnityWebRequest使用http與web服務(wù)器通訊,Unity,unity,服務(wù)器,c#

?2.在項(xiàng)目文件夾下新建WebServer文件夾,打開CMD窗口,在WebServer文件夾路徑下安裝express

Unity UnityWebRequest使用http與web服務(wù)器通訊,Unity,unity,服務(wù)器,c#

?Unity UnityWebRequest使用http與web服務(wù)器通訊,Unity,unity,服務(wù)器,c#

?3.在WebServer文件夾中新建main.js文件,在main.js中編寫服務(wù)端腳本

var express = require("express");
var path=require("path")
var app = express();
app.listen(7777);//監(jiān)聽ip+端口 http://127.0.0.1:7777/
app.use("/", express.static(path.join(process.cwd(), "www_root")));//在WebServer文件夾中新建www_root文件夾

Unity UnityWebRequest使用http與web服務(wù)器通訊,Unity,unity,服務(wù)器,c#

?4.在CMD中運(yùn)行main.js,打開瀏覽器,在地址欄中輸入http://127.0.0.1:7777/info.txt即可看到info.txt中的信息

Unity UnityWebRequest使用http與web服務(wù)器通訊,Unity,unity,服務(wù)器,c#

?Unity UnityWebRequest使用http與web服務(wù)器通訊,Unity,unity,服務(wù)器,c#

?二、UnityWebRequest
  1. 構(gòu)建UnityWebRequest協(xié)議請求
  2. 發(fā)送請求:SendWebRequest異步
  3. 從客戶端傳數(shù)據(jù)到服務(wù)端UploadHandler或從服務(wù)端下載數(shù)據(jù)到客戶端DownloadHandler

使用下面的腳本方法可以獲取到百度的網(wǎng)頁信息

注:需要引入using?UnityEngine.Networking;命名空間

IEnumerator GetBaiduInfo()
    {
        UnityWebRequest req = UnityWebRequest.Get("http://www.baidu.com");
        yield return req.SendWebRequest();
        Debug.Log(req.downloadHandler.text);
}

Unity UnityWebRequest使用http與web服務(wù)器通訊,Unity,unity,服務(wù)器,c#

三、發(fā)送數(shù)據(jù)到服務(wù)端

?1.修改main.js文件

var express = require("express");
var path=require("path")
var app = express();
app.listen(7777);//監(jiān)聽ip+端口 http://127.0.0.1:7777/
app.use("/", express.static(path.join(process.cwd(), "www_root")));//在WebServer文件夾中新建www_root文件夾

app.get("/", function (req, res) {
    //console.log(req);//打印請求信息
    console.log(req.query);
    res.send("Received information!!");
});
修改腳本方法
IEnumerator GetUploadInfo()
    {
        UnityWebRequest req = UnityWebRequest.Get("http://127.0.0.1:7777/?name=123&pwd=321");
        yield return req.SendWebRequest();
        Debug.Log(req.downloadHandler.text);
}

2.執(zhí)行main.js,查看客戶端和服務(wù)端打印的信息

Unity UnityWebRequest使用http與web服務(wù)器通訊,Unity,unity,服務(wù)器,c#

?Unity UnityWebRequest使用http與web服務(wù)器通訊,Unity,unity,服務(wù)器,c#

?四、從服務(wù)器上獲取文件信息

1.修改腳本方法

IEnumerator ReadResInfo()
    {
        UnityWebRequest req = UnityWebRequest.Get("http://127.0.0.1:7777/info.txt");
        yield return req.SendWebRequest();
        Debug.Log(req.downloadHandler.text);
}

2.執(zhí)行main.js,查看客戶端打印的信息

Unity UnityWebRequest使用http與web服務(wù)器通訊,Unity,unity,服務(wù)器,c#

?五、從服務(wù)端下載資源

1.在服務(wù)端根目錄中新建Sounds文件夾,在該文件夾中放了一首音樂

Unity UnityWebRequest使用http與web服務(wù)器通訊,Unity,unity,服務(wù)器,c#

?2.修改腳本方法

IEnumerator DownloadResfiles()
    {
        UnityWebRequest req = UnityWebRequest.Get("http://127.0.0.1:7777/Sounds/??? - asmr采耳助眠.mp3");
        yield return req.SendWebRequest();
        byte[] body = req.downloadHandler.data;
        Debug.Log(Application.dataPath);//打印項(xiàng)目的Assets路徑,該路徑只在PC端有效
        string fileName = Application.dataPath + "/Sounds/??? - asmr采耳助眠.mp3";
        File.WriteAllBytes(fileName, body);//需要引入using System.IO;
}

3.執(zhí)行main.js,可以看到音樂被下載到了項(xiàng)目的Sounds文件夾中

Unity UnityWebRequest使用http與web服務(wù)器通訊,Unity,unity,服務(wù)器,c#

?六、客戶端上傳文件到服務(wù)端

1.刪除服務(wù)端中Sounds文件夾中的音樂,從客戶端將音樂傳到服務(wù)端的Sounds文件夾中

修改main.js

var express = require("express");
var path=require("path")
var app = express();
app.listen(7777);//監(jiān)聽ip+端口 http://127.0.0.1:7777/
app.use("/", express.static(path.join(process.cwd(), "www_root")));//在WebServer文件夾中新建www_root文件夾,設(shè)置根目錄

app.get("/", function (req, res) {
    //console.log(req);//打印請求信息
    console.log(req.query);
    res.send("Received information!!");
});

var fs = require("fs");
app.put("/UploadFile", function (req, res) {
    //打開一個(gè)文件
    var fd = fs.openSync("./www_root/Sounds/??? - asmr采耳助眠.mp3", "w");
    req.on("data", function (data) {
        fs.write(fd, data, 0, data.length, function () { });
    });
    req.on("end", function () {
        res.send("UploadSucess");
        fs.close(fd, function () { });
    });
});

2.修改腳本方法

IEnumerator UploadResfiles()
    {
        string fileName = Application.dataPath + "/Sounds/??? - asmr采耳助眠.mp3";
        byte[] body = File.ReadAllBytes(fileName);
        UnityWebRequest req = UnityWebRequest.Put("http://127.0.0.1:7777/UploadFile", body);
        yield return req.SendWebRequest();
        Debug.Log(req.downloadHandler.text);
}

3.在CMD中執(zhí)行main.js,運(yùn)行客戶端,可以看到客戶端接收到服務(wù)端發(fā)來的信息,在服務(wù)端的Sounds文件中可以看到音樂被上傳了

Unity UnityWebRequest使用http與web服務(wù)器通訊,Unity,unity,服務(wù)器,c#

?Unity UnityWebRequest使用http與web服務(wù)器通訊,Unity,unity,服務(wù)器,c#

參考:

【Unity】網(wǎng)絡(luò)進(jìn)階實(shí)戰(zhàn)(四): UnityWebRequest全功能實(shí)戰(zhàn)詳解_嗶哩嗶哩_bilibili文章來源地址http://www.zghlxwxcb.cn/news/detail-593878.html

到了這里,關(guān)于Unity UnityWebRequest使用http與web服務(wù)器通訊的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 教你如何使用Nodejs搭建HTTP web服務(wù)器并發(fā)布上線公網(wǎng)

    教你如何使用Nodejs搭建HTTP web服務(wù)器并發(fā)布上線公網(wǎng)

    轉(zhuǎn)載自內(nèi)網(wǎng)穿透工具的文章:使用Nodejs搭建HTTP服務(wù),并實(shí)現(xiàn)公網(wǎng)遠(yuǎn)程訪問「內(nèi)網(wǎng)穿透」 Node.js 是能夠在服務(wù)器端運(yùn)行 JavaScript 的開放源代碼、跨平臺運(yùn)行環(huán)境。Node.js 由 OpenJS Foundation(原為 Node.js Foundation,已與 JS Foundation 合并)持有和維護(hù),亦為 Linux 基金會(huì)的項(xiàng)目。Node.js

    2024年02月05日
    瀏覽(137)
  • .NET Core(C#)使用Titanium.Web.Proxy實(shí)現(xiàn)Http(s)代理服務(wù)器監(jiān)控HTTP請求

    關(guān)于Titanium.Web.Proxy詳細(xì)信息可以去這里仔細(xì)看看,這里只記錄簡單用法 NuGet直接獲取Titanium.Web.Proxy 配置 與其說是配置,不如就說這一部分就是未來你需要使用的部分,想知道具體每個(gè)部分是干什么的就去看原文鏈接 全放過來太占地方 最后的 Console.Read(); 是一個(gè)等待函數(shù),你

    2024年02月09日
    瀏覽(24)
  • 使用esp32+micropython+microdot搭建web(http+websocket)服務(wù)器(超詳細(xì))第一部分

    使用esp32+micropython+microdot搭建web(http+websocket)服務(wù)器(超詳細(xì))第一部分

    microdot文檔速查 什么是Microdot?Microdot是一個(gè)可以在micropython中搭建物聯(lián)網(wǎng)web服務(wù)器的框架 micropyton文檔api速查 Quick reference for the ESP32 演示視頻鏈接 視頻中我們簡單的實(shí)現(xiàn)了 使用esp32搭建web服務(wù)器 實(shí)現(xiàn)get請求 上傳網(wǎng)頁到服務(wù)器 手機(jī)打開網(wǎng)址訪問該網(wǎng)頁 服務(wù)器處理請求,實(shí)現(xiàn)開

    2024年02月08日
    瀏覽(32)
  • Web服務(wù)器實(shí)現(xiàn)|基于阻塞隊(duì)列線程池的Http服務(wù)器|線程控制|Http協(xié)議

    Web服務(wù)器實(shí)現(xiàn)|基于阻塞隊(duì)列線程池的Http服務(wù)器|線程控制|Http協(xié)議

    代碼地址:WebServer_GitHub_Addr 摘要 本實(shí)驗(yàn)通過C++語言,實(shí)現(xiàn)了一個(gè)基于阻塞隊(duì)列線程池的多線程Web服務(wù)器。該服務(wù)器支持通過http協(xié)議發(fā)送報(bào)文,跨主機(jī)抓取服務(wù)器上特定資源。與此同時(shí),該Web服務(wù)器后臺通過C++語言,通過原生系統(tǒng)線程調(diào)用 pthread.h ,實(shí)現(xiàn)了一個(gè) 基于阻塞隊(duì)列

    2024年02月07日
    瀏覽(21)
  • HTTP——五、與HTTP協(xié)作的Web服務(wù)器

    HTTP——五、與HTTP協(xié)作的Web服務(wù)器

    HTTP——一、了解Web及網(wǎng)絡(luò)基礎(chǔ) HTTP——二、簡單的HTTP協(xié)議 HTTP——三、HTTP報(bào)文內(nèi)的HTTP信息 HTTP——四、返回結(jié)果的HTTP狀態(tài)碼 HTTP——五、與HTTP協(xié)作的Web服務(wù)器 HTTP——六、HTTP首部 HTTP——七、確保Web安全的HTTPS HTTP——八、確認(rèn)訪問用戶身份的認(rèn)證 HTTP——九、基于HTTP的功能

    2024年02月14日
    瀏覽(31)
  • WEB服務(wù)器配置與HTTP分析

    WEB服務(wù)器配置與HTTP分析

    目錄 實(shí)驗(yàn)?zāi)康模?實(shí)驗(yàn)要求: 實(shí)驗(yàn)原理: 實(shí)驗(yàn)步驟: 步驟1:創(chuàng)建拓?fù)?步驟2:為PC、Client和Server配置IPv4地址、子網(wǎng)掩碼和域名服務(wù)器 步驟3:啟動(dòng)設(shè)備和服務(wù)器 步驟4:測試PC-1、Client-1和Server-1之間的通信 步驟5:在Server-1上配置并啟動(dòng)DNS服務(wù)器? 步驟6:在Server-1上配置并啟動(dòng)

    2024年01月17日
    瀏覽(25)
  • 〖Web全棧開發(fā)③〗—HTTP協(xié)議和靜態(tài)web服務(wù)器

    〖Web全棧開發(fā)③〗—HTTP協(xié)議和靜態(tài)web服務(wù)器

    ??????個(gè)人簡介:以山河作禮。 ??????: Python領(lǐng)域新星創(chuàng)作者,CSDN實(shí)力新星認(rèn)證,阿里云社區(qū)專家博主 ????:Web全棧開發(fā)專欄:《Web全棧開發(fā)》免費(fèi)專欄,歡迎閱讀! TCP (Transmission Control Protocol) 是在互聯(lián)網(wǎng)協(xié)議(IP)上的一種基于連接(面向連接)的傳輸層協(xié)議 。數(shù)據(jù)

    2024年02月05日
    瀏覽(21)
  • SpringBootWeb入門、HTTP協(xié)議、Web服務(wù)器-Tomcat

    SpringBootWeb入門、HTTP協(xié)議、Web服務(wù)器-Tomcat

    目錄 一、SpringBootWeb入門 二、HTTP協(xié)議 HTTP-請求協(xié)議 HTTP-響應(yīng)協(xié)議 HTTP-協(xié)議解析 三、Web服務(wù)器-Tomcat 服務(wù)器概述 Tomcat 直接基于SpringFramework進(jìn)行開發(fā),存在兩個(gè)問題:配置繁瑣、入門難度大 通過springboot就可以快速的幫我們構(gòu)建應(yīng)用程序,所以springboot呢,最大的特點(diǎn)有兩個(gè) :

    2024年01月15日
    瀏覽(28)
  • Cisco Packet Tracer實(shí)驗(yàn):訪問Web服務(wù)器(加深對網(wǎng)絡(luò)體系結(jié)構(gòu)的理解)_一臺主機(jī)訪問一個(gè)Web服務(wù)器,HTTP協(xié)議

    Cisco Packet Tracer實(shí)驗(yàn):訪問Web服務(wù)器(加深對網(wǎng)絡(luò)體系結(jié)構(gòu)的理解)_一臺主機(jī)訪問一個(gè)Web服務(wù)器,HTTP協(xié)議

    如果覺得這篇文章寫得好,關(guān)注一下公眾號“小東方不敗”吧!碼字不易!感謝大佬的關(guān)注! 一臺普通的主機(jī)和一臺服務(wù)器: 連線: 配置IP地址: 主機(jī): 服務(wù)器: 將模式調(diào)成simulation,并且只勾選HTTP協(xié)議: 然后就可以看到: 點(diǎn)擊PC機(jī),選擇Web Browser: 勾選下面的top(置頂

    2024年02月04日
    瀏覽(92)
  • Unity向Web服務(wù)器上傳和下載圖片

    Unity向Web服務(wù)器上傳和下載圖片

    Unity的WWW不但能上傳下載文本形式的數(shù)據(jù),還可以上傳下載圖片,不過在傳輸過程中,圖片的信息需要轉(zhuǎn)為文本格式。 在上傳的這段代碼中,我們使用EncodeToPNG函數(shù)將圖片轉(zhuǎn)出為byte數(shù)組,使用WWWForm的方式上傳到Web服務(wù)器上,與之前不同的是,這一次上傳的PNG格式的圖片。當(dāng)上

    2024年02月03日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包