虚幻C++ http请求

2023-11-13

直接上代码


// Fill out your copyright notice in the Description page of Project Settings.

#pragma once

#include "CoreMinimal.h"
#include "Kismet/BlueprintFunctionLibrary.h"
#include "Interfaces/IHttpRequest.h"

#include "NetworkRequest.generated.h"

/**
 * 
 */
UCLASS()
class MYHTTPMODULE_API UNetworkRequest : public UBlueprintFunctionLibrary
{
    GENERATED_BODY()
    
public:
    // 向后端发送Post请求:参数全是字符串
    //UFUNCTION(BlueprintCallable, Category = "Network")
    static void GetAllMotorMessage();

private:
    static void GetAllMotorMessage_RequestComplete(FHttpRequestPtr RequestPtr, FHttpResponsePtr ResponsePtr, bool bIsSuccess);
};

// Fill out your copyright notice in the Description page of Project Settings.


#include "NetworkRequest.h"

#include "HttpModule.h"
#include "Interfaces/IHttpResponse.h"

void UNetworkRequest::GetAllMotorMessage()
{
    // 入参的json对象
    TSharedRef<FJsonObject> RequestObj = MakeShared<FJsonObject>();
    RequestObj->SetStringField("equipmentId", "");
    // 入参写入请求体
    FString RequestBody;
    TSharedRef<TJsonWriter<>> Writer = TJsonWriterFactory<>::Create(&RequestBody);
    FJsonSerializer::Serialize(RequestObj, Writer);
    // 构建请求要素并发送请求
    FHttpRequestRef Request = FHttpModule::Get().CreateRequest();
    Request->SetHeader("Content-Type", "application/json;charset=UTF-8");
    Request->SetVerb("POST");
    Request->SetURL("{请求路径}");
    Request->SetContentAsString(RequestBody);
    Request->OnProcessRequestComplete().BindStatic(&UNetworkRequest::GetAllMotorMessage_RequestComplete);
    Request->ProcessRequest();
}

void UNetworkRequest::GetAllMotorMessage_RequestComplete(FHttpRequestPtr RequestPtr, FHttpResponsePtr ResponsePtr, bool bIsSuccess)
{
    if (!bIsSuccess) return;
    TSharedRef<TJsonReader<>> Reader = TJsonReaderFactory<>::Create(ResponsePtr->GetContentAsString());
    TSharedPtr<FJsonObject> ResponseObj;
    if (FJsonSerializer::Deserialize(Reader, ResponseObj))
    {
        UE_LOG(LogTemp, Display, TEXT("Get Response..............."));
        TArray<TSharedPtr<FJsonValue>> data = ResponseObj->GetArrayField("data");
        if (data.Num() > 0) {
            FString name = data[0]->AsObject()->GetStringField("equipmentName");
            UE_LOG(LogTemp, Display, TEXT("first name is: %s"), *name);
        }
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

虚幻C++ http请求 的相关文章

  • HLSL 偏导数 ddx / ddy

    HLSL ddx ddy 在光栅化的时刻 GPUs会在同一时刻并行运行很多Fragment Shader 但是并不是一个pixel一个pixel去执行的 而是将其组织在2x2的一组pixels分块中 去并行执行 偏导数就正好是计算的这一块像
  • 飞机大战(C语言版)

    大一下要交课程设计 于是就用C语言写了一个飞机大战小游戏 没有用到第三方库 飞机和子弹的移动使用的光标移动函数 所以没有卡顿 其中w s a d分别表示上下左右 包括大写 空格发射子弹 游戏结束后可选择是否储存游戏数据 该程序复制后可直接使
  • UE4 如何使用C++代码实现 在指定范围内随机生成同一个种类的不同物品(怪物,NPC,拾取物)的 自定义蓝图

    一 引言 在游戏世界中有特别多的物品 NPC 怪物 使用UE4中的蓝图我们可以摆放这些事务 但是如何在指定范围内随机生成同一个种类的不同事物呢 这就需要UE4 实现 C 自定义 蓝图功能 二 构思 首先我们构思一下实现上诉功能 应该怎么做
  • Unity中Shader实现UI去色功能的实现思路

    文章目录 前言 一 在开发过程中 在UI中会涉及一些需要置灰UI的需求 有很多实现的方法 1 做两套纹理 通过程序控制切换 2 使用shader实现对纹理去色 二 这里主要记录用shader实现的思路 1 基础纹理的采样 2 支持组件中的调
  • unity期末作业-插针游戏

    unity期末作业 插针游戏 附下载链接 鼠标控制针的发射 圆盘可以显示接住的针数目 若两根针碰到则界面变红 游戏结束 详细情况如下动态图 点我下载 https download csdn net download weixin 43474
  • Unity小游戏-勇闯小岛(PC) 项目展示+完整项目源码

    游戏录像 游戏玩法 主角可以变换四种状态 玩家通过四种状态特有的技能来击败眼前的怪物闯关 切换到棕色 有一个一直围绕自己旋转的大摆斧攻击敌人 切换到绿色 可以抵挡一切的投掷物 但是无法攻击敌人 切换到粉色 切换瞬间可以发出飞镖 切换到蓝色
  • Unity MRTK使用详解(Htc vive+LeapMotion)

    MRTK Unity是一个由Microsoft驱动的开源项目 提供了多种组件和功能 用于加速Unity中的跨平台MR应用程序开发 以下是其一些功能 提供跨平台输入系统和用于空间交互和UI组件 启用快速原型通过在编辑器中的模拟 让你马上看到变
  • HTML5游戏实战(2):90行代码实现捕鱼达人

    捕鱼达人是一款非常流行的游戏 几年里赚取了数以千万的收入 这里借用它来介绍一下用Gamebuilder CanTK开发游戏的方法 其实赚钱的游戏未必技术就很难 今天我们就仅用90来行代码来实现这个游戏 CanTK Canvas ToolKi
  • UE4(Unreal Engine4)在蒙太奇动画中添加音频轨道通知

    UE4系列文章目录 文章目录 UE4系列文章目录 前言 一 遇到的问题 二 操作步骤 前言 UE4 Unreal Engine4 在蒙太奇动画中添加音频轨道通知 我们想在某一帧动画中添加声音 比如我们想在动画的第13帧这里添加音效 一 遇到
  • Unity项目资源加载管理简易框架(Resource)

    文章目录 一 背景 二 思路概述 三 具体实现代码及其思路梳理 1 资源路径 2 资源管理 3 资源加载 4 资源管理 四 说明 一 背景 在Unity的轻量型项目中如果对优化没有特别搞得要求 如果需要用到Resource Load这个接口
  • UE4文字显示乱码“字字字字字字字字”的解决办法

    键盘win R 搜索fonts 2 滑到最底下右键复制 宋体常规简体字 3 复制到ue4项目的字体文件夹中 如下 注意在外部文件处复制 4 回到项目界面 此时右下角会有个弹窗提示是否确认导入 点击导入 然后会弹一个 字体样式导入选项 弹框
  • UE4 解决景深效果闪烁问题

    原因 1 模型的垂直竖线 造成抗锯齿算法对竖线的渲染计算 处于一种不稳定的状态 因此闪烁 解决办法 使用LOD 用贴图去替代线条模型 2 材质的法线贴图 当法线贴图含有垂直竖线的纹理效果 也会造成闪烁 比如这种幕墙材质 解决办法 关闭或动态
  • 投资捕鱼游戏市场的如何避雷?以及研发技术问题。

    随着国内捕鱼市场在姚记科技 波克城市 途游等捕鱼龙头的深耕下 整个产品的研发 运营门槛都了非常大的提高 对于目前想要研发出一款具有竞争力的产品和版本 投入低于500万的资金很难出有竞争力的产品 加上运营门槛的提高 运营成本至少需要准备500
  • Unity中按钮检测鼠标状态

    改方法主要是用于按钮检测鼠标的进入 滑出 点击 抬起 长按 长按停止 1 先将下面这个脚本挂载到需要检测鼠标状态的按钮上 using System Collections using System Collections Generic u
  • 捕鱼游戏源码(数值+完整项目资源)

    目前捕鱼游戏的玩法 逐渐有这些趋势 捕鱼玩法 消除类玩法 捕鱼玩法 模拟经营玩法 捕鱼玩法 建造养成玩法 这些趋势已经有龙头企业逐渐开始做出尝试 但是对大部分团队来讲 对垂直领域的理解不够深刻 对产品理解不够深刻 团队没有沉淀和积累 通常都
  • Unity万向节死锁解决方案(2023/12/4)

    1 万向节死锁无法解决 这是因为它的特性就是如此 就像玻璃杯就是玻璃 这不可否认 别钻牛角尖昂 2 大多数情况下欧拉角足够用 例如 CF 摄像机不可能绕z轴旋转 x轴旋转也不会超过九十度 因为那样人物的腰子会被扭断 塔防游戏 保卫萝卜 吃鸡
  • 【Unity】运行时创建曲线(贝塞尔的运用)

    Unity 运行时创建线 贝塞尔的运用 1 实现的目标 在运行状态下创建一条可以使用贝塞尔方法实时编辑的网格曲线 2 原理介绍 2 1 曲线的创建 unity建立网格曲线可以参考 Unity程序化网格体 的实现方法 主要分为顶点 三角面 U
  • 【Unity】运行时创建曲线(贝塞尔的运用)

    Unity 运行时创建线 贝塞尔的运用 1 实现的目标 在运行状态下创建一条可以使用贝塞尔方法实时编辑的网格曲线 2 原理介绍 2 1 曲线的创建 unity建立网格曲线可以参考 Unity程序化网格体 的实现方法 主要分为顶点 三角面 U
  • Laya游戏开发中AI寻路解决方案

    1 AI自动寻路 机器人代码重构 按照目标点去执行逻辑 提前几帧判断直线 非直线的情况下 预设转弯角度 角度判断到达直线后开始执行到目标点的逻辑 2 U3D布点寻路 3 NevMesh Js寻路插件 NevMesh Js你可以在Laya引擎
  • VS2022 | 显示Unreal Engine日志

    VS2022 显示Unreal Engine日志 视图 gt 其他窗口 gt Unreal Engine日志 视图 gt 其他窗口 gt Unreal Engine日志

随机推荐

  • webpack 插件实战笔记(一)

    cnpm init 111Air webpackSerial1 i cnpm init This utility will walk you through creating a package json file It only cove
  • FCOS代码复现错误集合

    在我复现无锚框检测神网络 FCOS时 官方代码 FCOS master令我头疼不已 现将问题总结如下 仅供参考 1 from fcos core import C 遇到这个问题抓耳挠腮了好久 尝试过各种方法 最后不得已 在文件所在目录下重新
  • 图像处理中涉及的灰度图、彩色图以及深度图概念

    图像处理中涉及最多的概念就是图像的类型 为了很好的理解图像的概念以及处理图片 我们就需要对常见的图像具有一定的概念 我们首先介绍一下生活中常见的图像格式 1 bmp格式 这是一种不常见的图像格式 一般为无损图像 没有对图像进行压缩 占用的存
  • Java 脱敏工具类总结

    开发过程中 会遇到很多敏感数据的显示 这样不太安全 就需要用到相关的脱敏工具进行脱敏之后再显示 总结部分脱敏工具 package com li info import org apache commons lang3 StringUtils
  • pycharm的setting里面找不到我们用conda配置好的环境

    原因 电脑里面有多个python版本导致 我们目前添加的python并不是我们anaconda中python的版本 解决办法 在pycharm里面 使用setting里面的Add选项里 可以找到我们配置的所有环境 然后添加进去 具体如下图所
  • sql server将字符串转换为 uniqueidentifier 时失败

    sql server将字符串转换为 uniqueidentifier 时失败 sql server查询中出现 将字符串转换为 uniqueidentifier 时失败异常 原因为id设置为uniqueidentifier 字段 在where
  • shell day3

    思维导图
  • Unity错误记录——UIDocument重新激活后,脚本内编写的UI交互失效

    如题 本人使用UITookit编写了一个UXML的UI界面后 将其搭载到了一个UIDocument对象上 并将该对象作为UI相机的子对象以实现UI界面与相机绑定 在为UIDocument编写交互用的C 时 采用了下面的错误做法 导致UIDo
  • 正确获取硬盘序列号源码

    参考 http www winsim com diskid32 diskid32 cpp diskid32 cpp for displaying the details of hard drives in a command window
  • BES2300x笔记----TWS组对与蓝牙配对

    https me csdn net zhanghuaishu0 一 前言 看到有 道友 在评论区留言 对TWS组对 BT配对以及回连流程部分很迷糊 那这第二篇我们就来说说BES平台的相关流程和接口 PS 蓝牙基础部分就不再赘述了 网上有很多
  • jdbc mysql 重连_mysql重连的问题

    应用在长时间不连mysql后会与mysql断开 再次链接mysql时会报无法连接数据库的异常 所以连接的配置需要稍微改一下 factory org apache naming factory BeanFactory driverClass
  • LABVIEW连接MySQL进行读写更新查询操作并仿真

    相关软件的准备 欢迎访问我的小站 我的软件环境是LabVIEW 2018 32位 的 这个很重要 因为不同位数的labview需要安装不同位数的Connector odbc 还需要安装visio的运行环境 这个需要提前准备 Mysql的安装
  • 华为数字化转型之道 平台篇 第十三章 变革治理体系

    第十三章 变革治理体系 约翰 科特在 领导变革 一书中说 变革的领导团队既需要管理能力 也需要领导能力 他们必须结合起来 前面我们也谈到 数字化转型不仅是技术的创新 更是一项系统工程和企业真正的变革 企业要转型成功 既需要各个组织的积极参与
  • python---matplotlib详细教程(完结)

    文章每个图都带有案例 欢迎访问 目录 如何选择合适的图表 绘制简单的折线图 图表常用设置 颜色设置 线条样式和标记样式 画布设置 设置坐标轴标题 plt rcParams font sans serif SimHei 解决缺失字体 设置坐标
  • 【三】springboot整合token(超详细)

    springboot篇章整体栏目 一 springboot整合swagger 超详细 二 springboot整合swagger 自定义 超详细 三 springboot整合token 超详细 四 springboot整合mybatis p
  • 【华为OD机试真题 python】组装新的数组【2023 Q1

    题目描述 组装新的数组 给你一个整数M和数组N N中的元素为连续整数 要求根据N中的元素组装成新的数组R 组装规则 1 R中元素总和加起来等于M 2 R中的元素可以从N中重复选取 3 R中的元素最多只能有1个不在N中 且比N中的数字都要小
  • python格式化输出,format,数据类型转换。

    输出 计算机给用户输出的内容 是一个由里到外的一个过程 例如python语言中的print函数 输入 则相反 例如input函数 一 输出有普通的输出 也有格式化输出 普通输出 类似于 print hello word 这样直接打印 格式化
  • 为高尔夫比赛砍树

    为高尔夫比赛砍树 你被请来给一个要举办高尔夫比赛的树林砍树 树林由一个 m x n 的矩阵表示 在这个矩阵中 0 表示障碍 无法触碰 1 表示地面 可以行走 比 1 大的数 表示有树的单元格 可以行走 数值表示树的高度 每一步 你都可以向上
  • 系统篇: squashfs 文件系统

    一 squashfs简介 Squashfs是一套基于Linux内核使用的压缩只读文件系统 该文件系统能够压缩系统内的文档 inode以及目录 文件最大支持2 64字节 特点 数据 data 节点 inode 和目录 directories
  • 虚幻C++ http请求

    直接上代码 Fill out your copyright notice in the Description page of Project Settings pragma once include CoreMinimal h inclu