leopard8352
2023-12-04 8871a733498c8d717714b83bb096b7738224541a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
// Fill out your copyright notice in the Description page of Project Settings.
 
#pragma once
 
#include "CoreMinimal.h"
#include "Define/TapRankUpdateRequest.h"
#include "Define/TapRankUpdateResponse.h"
#include "UObject/Object.h"
#include "HttpTapRankUpdate.generated.h"
 
class IHttpResponse;
class IHttpRequest;
/**
 * 
 */
UCLASS(BlueprintType,Blueprintable)
class TAPTAP_API UHttpTapRankUpdate : public UObject
{
    GENERATED_BODY()
public:
    DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams(FHttpTapRankUpdateRequestSuccessEventHandle,
        const FTapRankUpdateResponse&,resp,
        int32,errCode,
        bool,isSuccess);
    UPROPERTY(BlueprintAssignable)
    FHttpTapRankUpdateRequestSuccessEventHandle HttpTapRankUpdateRequestSuccessEventHandle;
 
    
    void OnProcessRequestComplete(
        TSharedPtr<IHttpRequest, ESPMode::ThreadSafe> request,
        TSharedPtr<IHttpResponse, ESPMode::ThreadSafe> response,
        bool arg);
    
    UFUNCTION(BlueprintCallable)
    void StartRequest(const FTapRankUpdateRequest& req);
    
    UFUNCTION(BlueprintPure)
    FString BuildURL() const;
protected:
    UPROPERTY(EditAnywhere,BlueprintReadWrite)
    FString AppID;
    UPROPERTY(EditAnywhere,BlueprintReadWrite)
    FString AppKey;
    UPROPERTY(EditAnywhere,BlueprintReadWrite)
    FString ObjectID;
    UPROPERTY(EditAnywhere,BlueprintReadWrite)
    int32 TimeOut = 5;
};