http://www.uedev.org/forum.php?mod=viewthread&tid=114&extra=page%3D1
概述
制作游戏在很多情况下需要和WEB服务器进行交互,最常见的是在做Demo时需要通过游戏向WEB服务器传递数据(登录/注册验请求),WEB服务器处理(操作数据库)之后返回结果并调用指定的方法。 该教程简单介绍了如何通过UE4向WEB服务器(PHP)发送json数据包及回调方法。
添加模块和头文件引用
在代码编辑器中打开项目解决方案,在<Solution Name>/Source/<
rojectName>路径下,找到并打开<
rojectName>.Build.cs文件,添加HTTP模块:
![](http://www.uedev.org/static/image/smiley/default/titter.gif)
![](http://www.uedev.org/static/image/smiley/default/titter.gif)
[C++]
纯文本查看
复制代码
1 | PrivateDependencyModuleNames.AddRange( new string[] { "HTTP" }); |
2 | PrivateIncludePathModuleNames.AddRange( new string[] { "HTTP" }); |
然后在需要实现该功能的类文件中添加如下的头文件引用:
[C++]
纯文本查看
复制代码
1 | #include "Http.h" |
2 | #include "Json.h" |
数据内容为:
[C++]
纯文本查看
复制代码
1 | { "user" : "StormUnited" } |
创建:
[C++]
纯文本查看
复制代码
1 | // Create a writer and hold it in this FString |
2 | FString JsonStr; |
3 | TSharedRef< TJsonWriter< TCHAR , TCondensedJsonPrintPolicy< TCHAR > > > JsonWriter = TJsonWriterFactory< TCHAR , TCondensedJsonPrintPolicy< TCHAR > >::Create(&JsonStr); |
4 | JsonWriter->WriteObjectStart(); |
5 | JsonWriter->WriteValue(TEXT( "user" ), TEXT( "StormUnited" )); |
6 | JsonWriter->WriteObjectEnd(); |
7 | |
8 | // Close the writer and finalize the output such that JsonStr has what we want |
9 | JsonWriter->Close(); |
至此,json数据包准备完成。
准备接收json数据包的PHP网页
本示例中使用了PHP,你可以选择使用搭建动态网站或者服务器的开源软件,比如说wamp/lamp等在本机上建立一个WEB服务器来解析PHP页面。 创建mywebpage.php文件,并添加如下代码:
再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow