【问题标题】:LARAVEL - Response from SAME url, showing different resultsLARAVEL - 来自相同网址的响应,显示不同的结果
【发布时间】:2016-11-07 20:50:58
【问题描述】:

更新 1

@lukepolo 发现 23842515550750742 在 JS 中总是随机变为 23842515550750744。任何想法为什么?


我将 Laravel 用于我正在创建的 API。我正在使用 Forge 来运行服务器。

当我在 Chrome、Safari、FireFox 等中拉取接口的 URL 时,它返回的 ID 增加了 2。当我拉取相同的 url 时,在 Postman、CRUD 中具有相同的请求,终端通过 cURL 等,返回正确的响应。

邮递员的结果:

accountid: 1334372826597482
campaign:"Facebook"
campaignid: 23842515550750742 <-- CORRECT
client_id: 72
id: 817

Chrome 的结果:

accountid:1334372826597482
campaign:"Facebook"
campaignid:23842515550750744 <-- INCORRECT
client_id:72
id:817

我正在使用 Facebook 营销 API 将信息保存在本地,因此我可以以比他们的 API 给我提供的更快的响应速度运行大量查询。以下是列出包含基本信息的广告系列的代码:

    $this->parseRequestData($request);
    $campaigns = FacebookPerformanceOverview::whereIn('client_id', $this->sheet_ids)
        ->whereIn('accountid', $this->accountIds['facebook'])
        ->whereIn('campaignid', $this->campaigns)
        ->whereBetween('date', [$this->start_date, $this->end_date])
        ->groupBy('campaignid')
        ->get();
    $response = [];
    foreach ($campaigns AS $campaign) {
        $data = FacebookPerformanceOverview::whereIn('client_id', $this->sheet_ids)
            ->whereIn('accountid', $this->accountIds['facebook'])
            ->where('campaignid', $campaign->campaignid)
            ->whereIn('adsetid', $this->adsets)
            ->whereBetween('date', [$this->start_date, $this->end_date]);
        $response[] = array(
            'company' => $campaign->company,
            'campaign' => FacebookCampaignSettings::where('campaignid', $campaign->campaignid)->first(),
            'impressions' => $data->sum('impressions'),
            'clicks' => $data->sum('clicks'),
            'cost' => $data->sum('cost'),
            'reach' => $data->sum('reach'),
            'frequency' => $data->avg('frequency'),
            'uniqueclicks' => $data->sum('uniqueclicks'),
            'actions' => $data->sum('actions'),
            'offsiteconversions' => $data->sum('offsiteconversions'),
            'leads' => $data->sum('actionsleadgen') + $this->calculateLeads(),
        );
    }
    return response()->json($response, 200, [], JSON_NUMERIC_CHECK);

我无法提供 URL,因为它包含敏感信息,但我对发生的事情感到困惑。我已清除缓存,不同的浏览器,不同的计算机等。Web 浏览器总是错误地返回网络选项卡中的 ID。有什么想法吗?

【问题讨论】:

标签: php laravel curl eloquent laravel-5.3


【解决方案1】:

【讨论】:

  • 这是答案还是评论?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-12-03
  • 1970-01-01
  • 2021-07-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-07
相关资源
最近更新 更多