我正在使用 PHP 中的以下 cURL 进行 API 请求,以获取 api 提供商推荐的视频文件。这就是他们的文档的范围。
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_POSTFIELDS, $payload_json);
$response = curl_exec($curl);
当我将响应保存到文件然后在文本编辑器中查看它时,它看起来如下所示:
HTTP/1.1 200 OK
Date: Fri, 20 Dec 2024 21:23:34 GMT
Content-Type: application/json; charset=UTF-8
Content-Length: 3292160
Connection: keep-alive
Access-Control-Allow-Origin: *
x-request-id: a1d0850f892cb9b4fc357a3532e81b91
Server: cloudflare
CF-RAY: 8f52b1b34f7f8ff9-BOS
alt-svc: h3=":443"; ma=86400
{"video":"AAAAIGZ0eXBpc29tAAACAGlzb21pc28yYXZjMW1wNDEAAAAIZnJlZQAlpQhtZGF0AAACrwYF//+r3EXpvebZSLeWLNgg2SPu73gyNjQgLSBjb3JlID - 2 megs more of characters that are probably the video"}
ChatGPT 说要用字符串操作提取视频,例如搜索 \r\n\r\n 并删除所有内容,但我觉得一定有一种更干净的方法。
我怎样才能单独抓取视频并将其放入变量中。
提前感谢任何建议
告诉 curl 您不希望响应标头包含在响应中。您不需要这样做,因为不包括标头是默认行为,但您显然会获取它们。
那么你的回答将是:
然后您可以使用以下方式处理
json_decode()
:您可能还想检查响应代码是否成功,这将使您的脚本类似于: