使用UE4插件SimpleHTTP的技巧

7 篇文章 0 订阅
4 篇文章 0 订阅

UE4插件名: SimpleHTTP

版本 1.1

目录

  1. 前置工作
  2. 上传资源
  3. 下载资源
  4. 删除资源
  5. SimpleHTTP源码接口

哈喽大家好,我叫人宅,这节课我们来讲解一下SimpleHTTP使用技巧;

该插件目前提供了对web服务器进行上传下载和删除的函数接口,分别是:

        bool GetObject(const FString &URL, const FString &SavePaths);
	bool PutObject(const FString &URL, TArray<uint8> &Data);
	bool PutObject(const FString &URL, const FString &LocalPaths);
	bool PutObject(const FString &URL, TSharedRef<FArchive, ESPMode::ThreadSafe> Stream);
	bool DeleteObject(const FString &URL);

该插件使用上也是非常方便,无需繁杂的注册环节,即可使用:

 

1.前置工作

在使用该插件需要包含头文件

#include "SimpleHttpManage.h"

在你需要包含的模块.Build.cs

SimpleHTTP

一切准备就绪 就可以大胆的使用本插件了;


2.上传资源

我们拿阿里云OSS服务端做例子

        //域名 wersdfd.oss-cn-beijing.aliyuncs.com
	//格式 https://<域名>/<对象名>/<对象名>/...
	//https://wersdfd.oss-cn-beijing.aliyuncs.com/Hello.zip
	FString URL = "https://wersdfd.oss-cn-beijing.aliyuncs.com/Hello.zip";
	FString LocalPaths = "F:/PJ/TestOSS/SimpleHTTP.zip";
	if (!FSimpleHttpManage::Get()->PutObject(URL, LocalPaths))
	{
		check(0);
	}

3.下载资源

	FString URL = "https://wersdfd.oss-cn-beijing.aliyuncs.com/Hello.zip";
	FString LocalPaths = "F:/PJ/TestOSS/WWWEEEERRR.zip";
	if (!FSimpleHttpManage::Get()->GetObject(URL, LocalPaths))
	{
		check(0);
	}

4.删除资源

        FString URL = "https://wersdfd.oss-cn-beijing.aliyuncs.com/Hello.zip";

        if (!FSimpleHttpManage::Get()->DeleteObject(URL))
	{
		check(0);
	}

5.SimpleHTTP源码接口

#pragma once

#include "CoreMinimal.h"
#include "Interfaces/IHttpRequest.h"
#include "Interfaces/IHttpResponse.h"

class SIMPLEHTTP_API FSimpleHttpManage
{
public:
	FSimpleHttpManage();
	~FSimpleHttpManage();

	static FSimpleHttpManage *Get();
	static void Destroy();
	
	bool GetObject(const FString &URL, const FString &SavePaths);
	bool PutObject(const FString &URL, TArray<uint8> &Data);
	bool PutObject(const FString &URL, const FString &LocalPaths);
	bool PutObject(const FString &URL, TSharedRef<FArchive, ESPMode::ThreadSafe> Stream);
private:

	void HttpRequestComplete(FHttpRequestPtr Request, FHttpResponsePtr Response, bool bConnectedSuccessfully);
	void HttpRequestProgress(FHttpRequestPtr Request, int32 BytesSent, int32 BytesReceived);
	void HttpRequestHeaderReceived(FHttpRequestPtr Request, const FString& HeaderName, const FString& NewHeaderValue);

	void Print(const FString &Msg,float Time = 10.f,FColor Color = FColor::Red);
private:
	static FSimpleHttpManage	*SimpleHttp;
	FCriticalSection			Mutex;
	FString						TmpSavePaths;
};

 

可以看得出非常简单,而且易上手,好,那本次的分享到此结束,谢谢。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值