UE4 WCF RestFul 服务器 读取JSON 数据并解析 简单实例

Note:不知道为什么通过Txt读取的JsonString,如果TXT 不是ANSI编码的话,会报JsonArrayStringToUStruct  Unable to parse。

 

 

 

bool UWgtCpp_BaseMain::Http_readSortList() 
{
    auto temp_request = UNetAPI::createRequst(TEXT("http://localhost:59754/StudentService.svc/GetStudentList"), TEXT("GET"));

    temp_request->OnProcessRequestComplete().BindUObject(this, &UWgtCpp_BaseMain::OnArrSortListLoaded);
    temp_request->ProcessRequest();

    return true;
}

void UWgtCpp_BaseMain::OnArrSortListLoaded(FHttpRequestPtr _request, FHttpResponsePtr _response, bool bWasSuccessful)
{
    UE_LOG(LogTemp, Warning, TEXT("OnArrSortListLoaded"));
    if (bWasSuccessful)
    {
        switch (_response->GetResponseCode()) 
        {
        case 200:
            TArray<FDataCpp_BaseSortItem> arr;
            
            FJsonObjectConverter::JsonArrayStringToUStruct<FDataCpp_BaseSortItem>(_response->GetContentAsString(), &arr, 0,0);
            
            for (auto item : arr) 
            {
                auto temp_str = FString::Printf(TEXT("%d , %s"),item.id , item.Name);
                GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Cyan, item.Name);
            }

            break;
        }
    }
}

 

        [OperationContract]
        [WebInvoke
            (
            Method = "GET",
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "GetStudentList"
            )
        ]
        IList<Student> GetStudentList();
[{"Id":1,"Name":"sad"},{"Id":2,"Name":"ttt"},{"Id":3,"Name":"tretre"},{"Id":4,"Name":"terter"},{"Id":5,"Name":"treter"},{"Id":6,"Name":"fsdfds"},{"Id":7,"Name":"cccc"},{"Id":8,"Name":"vvvv"},{"Id":9,"Name":"bbb"},{"Id":10,"Name":"nnn"},{"Id":11,"Name":"mm"},{"Id":12,"Name":"qqq"},{"Id":13,"Name":"www"},{"Id":14,"Name":"eee"},{"Id":15,"Name":"rrr"},{"Id":16,"Name":"ttt"},{"Id":17,"Name":"yyy"},{"Id":18,"Name":"uuu"},{"Id":19,"Name":"iii"},{"Id":20,"Name":"ooo"},{"Id":21,"Name":"ppp"},{"Id":22,"Name":"aaa"},{"Id":23,"Name":"sss"},{"Id":24,"Name":"ddd"},{"Id":25,"Name":"fff"}]

 

转载于:https://www.cnblogs.com/linqing/p/5132834.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值