Tümü,
Üzgünüz - bu muhtemelen çok garip bir sorudur.
Ben Flash DEA üzerinde çalışıyorum. Öyle şeylerden biri bazı verileri almak için bir ASP sayfası (ki başka bir alanda bulunan) çağırmak.
Ancak, bu ASP sayfa log-in bu siteye o ASP sayfayı çağırmak için izin verilmeden önce, kullanıcılar gerektirir.
Yani, bu Flaş app işe almak benim ilk denemem giriş sayfasına giriş değişkenleri göndermek için loadVars.sendAndLoad () kullanımı idi. Bu benim "açmış" statüsünü tanımlama / oturum değişkenleri ayarlar. Flaş uygulama ihtiyacı verilerini istemek için ASP sayfasını çağırdığında Sonra, sonra, her şey çalışıyor. Flaş app sonra ASP sayfasını çağırdığında, ASP sayfa hala giriş ediyorum inanıyor, böylece başka bir deyişle, ilk sayfa loadVars.sendAndLoad çağrı beni günlükleri, ve log-in durumu (her nasılsa) korunur Lütfen
Şimdi Flash uygulaması dışındaki tüm etrafında ince bir çözüm, başka bir etki konuşlandırılmış olacak. Diğer bir deyişle, ASP sayfası (ve giriş sayfası) domainA.com vardır, ama Flash uygulama domainB.com olacak. Ve Flash uygulamalar farklı etki (I crossdomain ilke dosyaları hakkında biliyorum, ama çeşitli nedenlerle için bu bir seçenek değil) URL'leri arayamazsın.
Yani, benim bir sonraki düşünce bu oldu - oturum açma sayfasına giriş değişkenleri geçmek için cURL kullanır domainB.com bir PHP sayfası kurmak. ASP sayfasını çağırmak için cURL kullanır domainB.com başka bir PHP sayfasını ayarlayın.
Sonra, "vekiller" olarak hareket edecek olan PHP sayfaları aramak için benim Flaş app ayarlayabilirsiniz.
Ancak, bu işe yaramazsa. Ben (domainA.com üzerinde giriş sayfasına değişkenleri geçer) İlk PHP sayfasını çağırdığınızda, ben çalıştığını düşünüyorum. Sonra ikinci PHP sayfası ararsanız ben içeri giriş değilim sanki Ancak, domainA.com üzerinde ASP sayfası, isteği reddeder
Ben Flash dışında her şeyi çalıştırdığınızda, diğer bir deyişle, - "giriş-in" durumu ilk istek sonraki istekleri korunur gibi görünüyor. Ben her şeyi çalıştırmak Ancak, PHP sayfaları, devlet günlüğe kaydedilen korunmaz.
İlk PHP sayfası sisteme beni oturum görünüyor. Ama ikinci PHP sayfası oturum olması ile alacak değil
Bu farkı açıklamak istiyorum kurabiye Flash ve PHP farklı ele nasıl herhangi bir fikir?
Ben herhangi bir tavsiye veya rehberlik dayalı, çok daha fazla ayrıntı sağlamak için mutluyum.
Şimdiden çok teşekkürler!
---- EDIT ----
Müthiş geri bildirim ve önerilere dayalı olarak, ben bu işe aldım. Ben onu parlatmak için bir şans vardı değil; bu cURL seçeneklerden bazıları gereksiz ya da gereksiz olabilir. Ama en azından, o çalışır. İşte kod:
<?php
$ckfile = tempnam (".", "CURLCOOKIE");
$url_1 = 'https://somedomain.com/loginService';
$url_2 = 'https://somedomain.com/getMyData.asp';
$fields_1 = array(
'field1'=>"blah",
'field2'=>"blah",
'field3'=>"blah",
);
$fields_2 = array(
'fieldX'=>"blah",
'fieldY'=>"blah",
'fieldZ'=>"blah",
);
$a='';
$postvars_1 = '';
foreach($fields_1 as $key=>$value) {
$postvars_1.= $a.urlencode($key).'='.urlencode($value);
$a='&';
}
$a='';
$postvars_2 = '';
foreach($fields_2 as $key=>$value) {
$postvars_2.= $a.urlencode($key).'='.urlencode($value);
$a='&';
}
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_COOKIESESSION, TRUE);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_COOKIEFILE, $ckfile);
curl_setopt($ch, CURLOPT_COOKIEJAR, $ckfile);
curl_setopt($ch, CURLOPT_COOKIE, session_name() . '=' . session_id());
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_POST, count($fields));
curl_setopt($ch, CURLOPT_POSTFIELDS, $postvars);
curl_setopt($ch, CURLOPT_URL, $url_1);
curl_setopt($ch, CURLOPT_POST, count($fields_1));
curl_setopt($ch, CURLOPT_POSTFIELDS, $postvars_1);
$result_1 = curl_exec($ch);
curl_setopt($ch, CURLOPT_URL, $url_2);
curl_setopt($ch, CURLOPT_POST, count($fields_2));
curl_setopt($ch, CURLOPT_POSTFIELDS, $postvars_2);
$result_2 = curl_exec($ch);
curl_close($ch);
header("Content-type: text/xml");
print $result_2;
unlink($ckfile);
?>
Söylemeye gerek yok, bunu gerçekleştirmek için çok daha iyi yollar, ya da benim koduyla bazı ciddi sorunlar olabilir. Ama çalışma, şimdi, hiç yoktan iyidir. Ben toplumun yardımı olmadan çalışmak için bu kazanılmış ve aşağıda insanlar var asla. Çok, çok teşekkürler!