1 Haftadır aşağıda ki hatayı aşamıyorum kafayı yiycem
Aşağıda ki kodu çalıştırdığımda twitter hesabının profil resmi falan görünüyor ama tweetler falan görüntülenmiyor.
Nasıl bu hatayı aşabilirim?
Hata:
Aldığım Hata:
Access to XMLHttpRequest at 'https://api.x.com/graphql/xF6sXnKJfS2AOylzxRjf6A/DataSaverMode?variables=%7B%22device_id%22%3A%22Windows%2FChrome%22%7D' from origin 'https://musteri.forgaz.com' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.
Kod:
<?php
// CORS politikasını ayarla
header("Access-Control-Allow-Origin: https://musteri.forgaz.com");
header("Access-Control-Allow-Methods: POST, OPTIONS");
header("Access-Control-Allow-Headers: Content-Type, Authorization, X-Requested-With");
// Rastgele tarayıcı bilgisi oluşturma fonksiyonu
function getRandomUserAgent() {
$user_agents = [
// Chrome
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.5195.123 Safari/537.36",
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:105.0) Gecko/20100101 Firefox/105.0",
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.16; rv:105.0) Gecko/20100101 Firefox/105.0",
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.5195.123 Safari/537.36 Edge/105.0.5195.101",
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.5195.123 Safari/537.36 OPR/83.0.4356.111",
];
return $user_agents[array_rand($user_agents)];
}
// Tarayıcı bilgisi
$user_agent = getRandomUserAgent();
// Session bilgilerini dizi olarak tanımla
$session = [
["domain" => ".twitter.com", "expiry" => 1746608611, "httpOnly" => false, "name" => "twid", "path" => "/", "sameSite" => "None", "secure" => true, "value" => "deneme"],
//Diğer Session Bilgileri
];
// Cookie stringini oluştur
$cookie_string = "";
foreach ($session as $cookie) {
$cookie_string .= $cookie['name'] . "=" . urlencode($cookie['value']) . "; ";
}
// GraphQL API'ye istek yap
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://twitter.com",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"cookie: $cookie_string",
"User-Agent: $user_agent" // Tarayıcı bilgisini ekleyin
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
?>