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