Quantcast
Channel: Active questions tagged youtube-api - Stack Overflow
Viewing all articles
Browse latest Browse all 3831

PHP YouTube API not working on my hosting

$
0
0

I am getting mp4 URL from YouTube API with PHP. But it works on local server and not on hosting.

Here is a screenshot of the error I got:screenshot

I am getting mp4 URL of video from YouTube API with PHP. I am using these codes:

<?phpfunction getVideoInfo($video_id){    $ch = curl_init();    curl_setopt($ch, CURLOPT_URL, 'https://www.youtube.com/youtubei/v1/player?key=[key]');    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);    curl_setopt($ch, CURLOPT_POST, 1);    curl_setopt($ch, CURLOPT_POSTFIELDS, '{  "context": {    "client": {      "hl": "en",      "clientName": "WEB",      "clientVersion": "2.20210721.00.00",      "clientFormFactor": "UNKNOWN_FORM_FACTOR",   "clientScreen": "WATCH",      "mainAppWebInfo": {        "graftUrl": "/watch?v='.$video_id.'",           }    },    "user": {      "lockedSafetyMode": false    },    "request": {      "useSsl": true,      "internalExperimentFlags": [],      "consistencyTokenJars": []    }  },  "videoId": "'.$video_id.'",  "playbackContext": {    "contentPlaybackContext": {        "vis": 0,      "splay": false,      "autoCaptionsDefaultOn": false,      "autonavState": "STATE_NONE",      "html5Preference": "HTML5_PREF_WANTS",      "lactMilliseconds": "-1"    }  },  "racyCheckOk": false,  "contentCheckOk": true}');    curl_setopt($ch, CURLOPT_ENCODING, 'gzip, deflate');    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);    $headers = array();    $headers[] = 'Content-Type: application/json';    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);    $result = curl_exec($ch);    if (curl_errno($ch)) {        echo 'Error:' . curl_error($ch);    }    curl_close($ch);    return $result;}print_r(getVideoInfo("[video_id]"));

There is no problem running on local server. I am able to get the mp4 URL of the video. But when I upload the files to the hosting and run it, the URL from the API tells me "This content isn't available." fetches an mp4 file containing the text. How can I solve this? Both are the same code, but what could be the reason why it works on local server and not on hosting?


Viewing all articles
Browse latest Browse all 3831

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>