Playfab开发(一)如何调用PlayFab接口

简介: Playfab开发(一)如何调用PlayFab接口

 本人从事海外游戏制作和发行,参与了不少海外研发团队studio的项目,这里我将个人接触到的一些使用Playfab开发的项目心得分享给大家。

PlayFab简介

playfab是一家主要为游戏开发人员提供游戏开发和管理的跨平台工具及服务的公司,

PlayFab正在构建当今游戏所需的所有基于云的基础架构:玩家匹配,排行榜,服务器托管,玩家身份/个人资料管理,第三方登录和支付SDK支持,商务等等。PlayFab的目的是让游戏开发人员专注于他们的游戏,为他们处理服务器端的工作。PlayFab的服务与平台无关,微软保留了这方面的内容:有适用于Xbox,Windows,PlayStation,Switch,iOS和Android的SDK,这对于一些开发者来说降低了开发的门槛。

同时PlayFab后台为运营支撑的同事提供了比较丰富的玩家数据分析统计表格,很直观的看到玩家的新增,付费,转化率等关键信息。

因此PlayFab可以满足绝大多数游戏开发制作团队的需要,只需要几个美术,客户端,策划在后台配置一些关键的匹配,排行,商品货币等信息,就可以快速做一个游戏,这个要得益于PlayFab为Playfab为开发者提供了丰富的接口。

PlayFab丰富的API接口

可以参考 REST API 参考 - PlayFab | Microsoft Learn

如图:

image.gif编辑

在这里,我们可以根据自己需要来选择不同的API和方法来实现自己的服务器端逻辑或者测试接口,对于playfab都提供了哪些接口可以参考https://api.playfab.com/documentation  这里有很多API,这里比如我想写一个加虚拟货币的。

    1. AddUserVirtualCurrency  
    POST https://{{TitleID}}.playfabapi.com/Server/AddUserVirtualCurrency
        Content-Type: application/json
        X-SecretKey: <developer_secret_key>
    {
      "PlayFabId": "20394883",
      "VirtualCurrency": "GC",
      "Amount": 100
    }
    1. image.gif对应的链接是 https://api.playfab.com/documentation/server/method/AddUserVirtualCurrency 这里有一个TRY IT 你可以点击自定义参数,其中PlayFabId是你需要增加虚拟币的玩家id,VirtualCurrency是你在后台配置的货币单位,Amount是个数。
    2. image.gif编辑
    3. 当然我可以自己利用官网的SDK自己写逻辑,
      SDK可以从Azure PlayFab 文档 - PlayFab | Microsoft Learn来下载。
      比如我使用的是PHP开发,那么使用 https://docs.microsoft.com/zh-cn/gaming/playfab/sdks/php/ 下载后可以根据尝试编写一个测试用例 AddUserVirtualCurrency.php 放在ExampleProject目录下:
    <?php
    include "../PlayFabSDK/PlayFabClientApi.php";
    include "../PlayFabSDK/PlayFabServerApi.php";
    include "../PlayFabSDK/PlayFabMatchmakerApi.php";
    include "../PlayFabSDK/PlayFabAdminApi.php";
    try {
            $TitleId = "XXXX";//This should just be hard coded into your server
            $PlayFabApi = "Server";
            $ApiMethod = "AddUserVirtualCurrency";
            $DevSecretKey = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";// This should just be hard coded into your server  
      $jsonData = array("Amount"=>100, "PlayFabId"=>"E8EBDB378AEDAB4A", "VirtualCurrency"=>"GC");
            $JsonRequest = $jsonData;
      var_dump($JsonRequest);
            $authValue = $DevSecretKey;
            $apiReflection = new ReflectionClass("PlayFab" . $PlayFabApi . "Api");
            $methodReflection = $apiReflection->getMethod($ApiMethod);
            $result = $methodReflection->invoke(null, $TitleId, $authValue, $JsonRequest);
            echo $result;
        } catch (Exception $e) {
            echo "Caught exception: ",  $e->getMessage(), "\n";
        }
    ?>
    1. image.gif运行php文件得到结果:
    2. image.gif编辑


    相关文章
    |
    人工智能 测试技术 Python
    AI也有“智商”吗?我们到底该用什么标准来评估它?
    AI也有“智商”吗?我们到底该用什么标准来评估它?
    1599 8
    |
    敏捷开发 开发框架 测试技术
    从零开始:如何快速开发一个软件?实用方法 + 避坑指南
    本文介绍了如何在保证质量的前提下快速开发软件,涵盖从需求分析到上线推广的完整流程。内容包括敏捷开发、MVP设计、工具选择、团队协作与持续运营等关键环节,适合初创团队、企业试点及个人开发者参考,帮助高效验证产品价值,缩短开发周期,降低试错成本。
    |
    监控 安全 Ubuntu
    从零开始学安全:服务器被入侵后的自救指南
    在信息爆炸时代,服务器安全至关重要。本文针对黑客入侵问题,从应急处理、系统恢复到安全加固全面解析。发现入侵时应冷静隔离服务器,保存日志证据,深入排查痕迹;随后通过重装系统、恢复数据、更改密码完成清理;最后加强防火墙、更新软件、部署检测系统等措施防止二次入侵。服务器安全是一场持久战,需时刻警惕、不断优化防护策略。
    1848 1
    |
    数据采集 前端开发 搜索推荐
    埋点tracker:前端数据埋点-方案设计思路梳理
    埋点tracker:前端数据埋点-方案设计思路梳理
    4749 0
    |
    存储 安全 开发工具
    如何安全删除GitHub中的敏感文件?git-filter-repo操作全解析
    当敏感文件误传至GitHub时,需使用`git-filter-repo`彻底删除文件及历史记录。本文详解操作步骤与注意事项,如备份、强制推送、团队协作处理,并建议搭配高安全性云服务,防止数据泄露,保障代码仓库安全。
    952 1
    |
    Android开发 Windows
    Android studio 报错Connect to 127.0.0.1:8888 [/127.0.0.1] failed: Connection refused: connect(已解决)
    这是一篇关于解决Android Studio报错“Connect to 127.0.0.1:8888 failed: Connection refused”的文章。问题通常因系统代理设置被Android Studio自动保存导致。解决方法是找到系统中Android Studio使用的gradle.properties文件(位于Windows的C:\Users\你的电脑用户名\.gradle或Mac的/Users/.{你的用户目录}/.gradle),删除或注释掉多余的代理配置后保存并重新Sync项目。希望此经验能帮助快速解决同类问题!
    3391 36
    |
    算法 安全 网络安全
    https 的加密过程
    HTTPS通过SSL/TLS协议实现安全通信,结合非对称加密与对称加密技术。客户端与服务器协商加密套件,验证证书后生成主密钥用于后续数据加密传输,确保身份真实、数据保密与完整。
    2978 0
    |
    传感器
    DIY_实现光敏电阻传感器简单控制LED
    DIY_实现光敏电阻传感器简单控制LED
    4631 2
    |
    监控 数据可视化 iOS开发
    这几款Wifi分析工具,请低调收藏!
    这几款Wifi分析工具,请低调收藏!
    2663 1
    |
    安全 算法 网络协议
    【网络原理】——图解HTTPS如何加密(通俗简单易懂)
    HTTPS加密过程,明文,密文,密钥,对称加密,非对称加密,公钥和私钥,证书加密