UE4上传图片和PHP交互

 

#include "IHttpRequest.h"
#include "HttpModule.h"
#include "Base64.h"
"HTTP"
void AMyActor::MyHttpCall(FString TexturePath)
{
	// TexturePath contains the local file full path
	//FString TexturePath = TEXT("H:/SVN/VRHome/Saved/Screenshots/Windows/0.jpg");
	// file name
	int32 LastSlashPos;
	TexturePath.FindLastChar('/', LastSlashPos);
	FString FileName = TexturePath.RightChop(LastSlashPos + 1);

	// get data
	TArray<uint8> UpFileRawData;
	FFileHelper::LoadFileToArray(UpFileRawData, *TexturePath);

	FString JsonStr;
	TSharedRef< TJsonWriter<TCHAR, TCondensedJsonPrintPolicy<TCHAR> > > JsonWriter = TJsonWriterFactory<TCHAR, TCondensedJsonPrintPolicy<TCHAR> >::Create(&JsonStr);
	JsonWriter->WriteObjectStart();
	JsonWriter->WriteValue(TEXT("FileToUpload"), TEXT("FileName"));
	JsonWriter->WriteValue(TEXT("ImageData"), FBase64::Encode(UpFileRawData));
	JsonWriter->WriteObjectEnd();
	// Close the writer and finalize the output such that JsonStr has what we want
	JsonWriter->Close();

	TSharedRef<IHttpRequest> Request = FHttpModule::Get().CreateRequest();

	Request->SetHeader(TEXT("Content-Type"), TEXT("application/json;charset=utf-8"));
	Request->SetURL(TEXT("http://localhost/LoadTexture.php"));
	Request->SetVerb(TEXT("POST"));
	Request->SetContentAsString(JsonStr);
	Request->ProcessRequest();
	//Request->OnProcessRequestComplete().BindUObject(this, &AMyActor::AAA);
	//GEngine->AddOnScreenDebugMessage(1, 2.0f, FColor::Green, value);//prints nothing
}

PHP:

 

 

<?php

// 首先接收上传的数据

$post_data = file_get_contents('php://input');

// 解析json字符串

$obj = json_decode($post_data);

// 获取包含在Json字符串中的数据

// echo $obj->{'ImageData'};

$myfile=fopen("newfile.png", "w") or die("Unable to open file!");

$txt = base64_decode($obj->{'ImageData'});

fwrite($myfile,$txt);

echo "成功啦!";
?>

 

原文地址:http://www.cnblogs.com/staticmao/p/6289449.html

参考:https://wiki.unrealengine.com/UE4%E4%B8%8EWEB%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%BA%A4%E4%BA%92(json)

可参考:https://zhuanlan.zhihu.com/p/79216048

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
UE5是一款由虚幻引擎开发的游戏引擎,其具有强大的图像渲染能力和灵活的游戏交互功能。像素流是UE5中的一个重要特性,它可以提供更高质量的图像表现并提升用户的观赏体验。 像素流可以理解为一种动态图像压缩技术,它将高分辨率的图像数据进行压缩和分割,然后通过网络传输给用户设备,并在本地解压和渲染。这样一来,用户可以在不占用过多带宽和存储空间的情况下,享受到高精度的图像表现。而且,像素流还能根据用户设备的性能和带宽情况进行智能调整,确保在不同网络环境下都能保持良好的游戏体验。 在Web交互方面,UE5也提供了强大的支持。通过HTML5和WebGL技术,开发者可以将UE5游戏直接嵌入到网页中,用户只需打开浏览器就能享受到高质量的游戏内容,无需下载和安装任何额外的软件。同时,UE5还提供了丰富的Web交互接口,开发者可以通过JavaScript等前端技术与游戏引擎进行交互,实现诸如登录、社交分享、在线支付等功能。 总之,UE5像素流和Web交互为游戏开发者和用户带来了许多便利和优势。开发者可以将高质量的游戏内容快速发布到各个平台,而用户则可以随时随地享受到流畅的游戏体验,无论是在PC、移动设备还是网页上。相信随着UE5的不断发展和完善,将会有越来越多的优秀游戏能够通过像素流和Web交互技术呈现给用户。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值