【问题标题】:How to parse AJAX by cURL?如何通过 cURL 解析 AJAX?
【发布时间】:2017-06-05 04:02:59
【问题描述】:

我正在尝试解析这个网址:

https://halykbank.kz/presscenter/novosti

新闻由 AJAX 加载。在网络中我找到了 URL,它必须显示加载的新闻,但只有

{"result":false,"hint":"NO_AUTHORIZATION_DATA"}

为什么我会得到这个?这里是 URL,我认为必须向我显示加载的新闻:

https://backend.halykbank.kz/struct/category-items?categoryId=199&sort=position%20desc&offset=200&limit=100

【问题讨论】:

  • 他们的 AJAX 可能只在他们自己的页面上使用。它可能受到一次性令牌的保护,以防止您在未经他们批准的情况下使用他们的私人服务。

标签: php ajax curl


【解决方案1】:

您必须发送这些标头

Auth-User-Id, Auth-Token, Auth-Time

【讨论】:

  • 除非有允许您使用的公共 API,否则他们可能不会告诉您如何使这些 API 有效。
  • alex78191 所说的如何发送这些标头?
【解决方案2】:
composer require guzzlehttp/guzzle:~6.0


$client = new GuzzleHttp\Client();
$res = $client->get('https://api.github.com/user', ['auth' =>  ['user', 'pass']]);
echo $res->getStatusCode(); // 200
$json_string = $res->getBody();

$json_obj = json_decode($json_string); //return Object<BR>
$json_arr = json_decode($json_string,true); //return Array


【讨论】:

  • 也许有另一种解决方案来获取数据而不是 CURL
猜你喜欢
  • 2014-08-23
  • 2020-05-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-21
  • 2013-07-17
  • 2014-05-25
  • 2018-06-21
  • 2011-01-29
相关资源
最近更新 更多