Tek bir kullanıcı twitter bot için OAuth Klasik Giriş değiştirilmesi

3 Cevap php

Sitemin bir olay meydana geldiğinde bir güncelleştirme tweet bir php fonksiyonunu kullanır. Şu anda klasik oturum açma tekniğini kullanıyorum, yani işlevi bu gibi görünüyor içeri ilişkili Twitter hesabı için kullanıcı adı ve şifre sadece kodlanmış olan:

function sendTweet($msg)
{
	$username = 'username';
	$password = 'password';
	$url = 'http://twitter.com/statuses/update.xml';
	$curl_handle = curl_init();

	curl_setopt($curl_handle, CURLOPT_URL, "$url");
	curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 2);
	curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt($curl_handle, CURLOPT_POST, 1);
	curl_setopt($curl_handle, CURLOPT_POSTFIELDS, "status=$msg");
	curl_setopt($curl_handle, CURLOPT_USERPWD, "$username:$password");

	$buffer = curl_exec($curl_handle);
	curl_close($curl_handle);
}

Ben her tweet sonra yerine "API" benim uygulama adını kullanacak, böylece klasik giriş önerilmiyor olduğunda çoğunlukla yolda sorunları önlemek için, OAuth kullanmak için yeniden yazmak, ama aynı zamanda istiyorum.

Ben bulabilirsiniz tüm örnekler uygun bir belirteç ile geri kaynak site için gönderir, sonra kimlik doğrulama isteği onaylaması twitter.com kullanıcı gönderir ki, bir authentication system yaratmayı içerir. Benim uygulama için orada sadece bir twitter hesabı var ve bu eylem (kim bile biliyor ya o bir tweet başlatılması olduğu umurumda değil) başlatır kullanıcıya ait değil gerçi.

Peki bunu nasıl yapacağım? Aklıma iyi seçenek bana bir erişim belirteci, sendTweet fonksiyon içine belirteç sonra sabit kod talep sağlayacak bir defalık kullanım komut dosyası oluşturmak. Böyle basit bir uygulama için overkill bir sürü gibi görünüyor, ve Twitter hiç erişim belirteci sona eğer yolda potansiyel bir sorun oluşturur. Docs muhtemelen asla söylüyorlar, ancak uygulamaların onlar eğer incelikle işlemek için tasarlanmış olması gerektiğini söyledi.

Herkes böyle bir proje ile deneyimi var mı? Bunu yapmak için daha basit ve daha zarif bir yolu var mı?

3 Cevap

Abraham PHP Kullanımı Twitter OAuth Library ve kullanımı single access token.

(Eğer bir tane var varsayarak) admin panelinde içine OAuth senaryoyu yazmak gerekir. Erişim tuşu süresi dolarsa, sadece yönetici re-yetki verebilir.

Bir örnek gerekirse, ben İbrahimin OAuth kullanarak tam talimatları ile tek kullanımlık bir belirteç bot yazdı.

http://www.edwardhotchkiss.com/blog/twitter-bot-using-oauth/