CURL kullanarak bir ASP.NET oturumu önlemek için çalışıyoruz

0 Cevap php

Benim ihtiyaçlarını öngörerek biraz too yararlı olmak bir sağlayıcıdan bir web hizmetini kullanıyorum. Kullanıcıların kendi hizmetlerini tetiklemek için tıklayın için onlar, bana web yapıştırmak için bir HTML pasajı verdik. Ben komut dosyası için bu işlemi tercih ediyorum, bu yüzden uygun olarak, aynı url mesaj cURL isteği bir php komut dosyası var. Ancak, bu sağlayıcı benim oturumda sekmeleri tutmak ve yerine her bir benzersiz bir istek olmaktan çok, bir update birincisi olarak her yeni istek, yorumlamaktadır.

Benim konuyla ilgili sağlayıcı temas ettik ve onların sistem planlandığı gibi çalıştığını beni bilgilendirmek ve bana sonraki her cURL istek için aynı ASP.NET oturumu kullanarak önlemek için imkansız olduğunu için bu kadar ileri gittin. Benim tercih seçeneği farklı bir satıcıdan geçmek için de olsa, şu an bir seçenek görünmüyor. Her cURL isteği ile yeni bir ASP.NET oturum almak için güvenilir bir yolu var mı?

Ben boşuna, CURLOPT 's kümesi şu denedim:

//initialize curl 
$ch = curl_init($url); 

//build a string out of the post_vars
$post_str = http_build_query($post_vars);

//set the necessary curl options 
curl_setopt($ch, CURLOPT_TIMEOUT, 30); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_FAILONERROR, 1); 
curl_setopt($ch, CURLOPT_POST, 1); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_str); 
curl_setopt($ch, CURLOPT_FAILONERROR, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_COOKIESESSION, 1);
curl_setopt($ch, CURLOPT_FRESH_CONNECT, 1);
curl_setopt($ch, CURLOPT_FORBID_REUSE, 1);
curl_setopt($ch, CURLOPT_USERAGENT, "UZ_".uniqid());
curl_setopt($ch, CURLOPT_REFERER, CURRENT_SITE_URL."index.php?newsession=".uniqid());
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Pragma: no-cache", "Cache-Control: no-cache"));

//execute the call to the backend script, retrieve the results 
$xmlstr = curl_exec($ch);

0 Cevap