App Store Connect,销售报告在php中返回句柄

Posted

技术标签:

【中文标题】App Store Connect,销售报告在php中返回句柄【英文标题】:AppStoreConnect, salesReports return handle in php 【发布时间】:2020-12-01 22:33:29 【问题描述】:

我正在通过 API 请求获取 AppStoreConnect、salesReports。如文档中所述,返回类型为Content-Type: gzip。我得到的是 gzip blob 数据,我不知道如何在 php 中处理它。

blob 看起来像这样 =>

��]�8�~�~���e?:���Ű��T�6� �H�$wѿ_ʒ/i"j(�F�"d�:�3gf��8��E̦�cm�4���_l,~��h#_��g�D�Q��y�]�����0��"L��@�kir��!߷b��K�=��2l���m�F/�/n�X��_��i)�:9ֈ���3�l�_���K�q��/Q���R~

当我使用 gzdecode() 解压缩它时,我得到了一些可读的数据,但它看起来很混杂,我不知道如何对其进行排序。我需要一种方法来整理这些数据。

$blob = $this->client->request(
                'GET',
                "salesReports",
                [
                    'headers' => [
                        'Accept'        => 'application/a-gzip, application/json',
                        'Accept-Encoding'   => 'deflate,gzip',
                        'Authorization' => "Bearer $this->jwt"
                    ],
                    'query' => $queryParams
                ]
            )->getBody()->getContents();

 $res=  gzdecode($blob) ;
 echo $res;

【问题讨论】:

【参考方案1】:

转换后的 blob 是以空格分隔的 csv 内容,您可以将它们用行 (/n) 和列 (/t) 分隔。我不知道为什么苹果不使用逗号分隔格式,这样很容易识别。

$lines =  explode("\n", gzdecode($res));

foreach ($lines as $key => $line)

   $cols = explode("\t", $line);

【讨论】:

以上是关于App Store Connect,销售报告在php中返回句柄的主要内容,如果未能解决你的问题,请参考以下文章

iTunes Connect 销售和趋势报告

从 iTunes Connect 自动下载销售报告

iTunes Connect 销售报告不会超过 10 月 30 日

当您使用 App Store Connect 在 App Store 中下架某个 App 时,更改需要多长时间?

Codemagic APP_STORE_CONNECT_PRIVATE_KEY 提供的值无效

处理到 App Store 后从销售中移除