Graph API + JavaScript = Facebook Videoları - Google Fan Webmaster Forum
Google Fan Webmaster Forum  
herşeyi sana yazdım

Geri git   Google Fan Webmaster Forum > Webmaster Genel > Webmaster Genel konular sorunlar
KEY
Kayıt ol Articles Sosyal Gruplar Forumları Okundu Kabul Et

Webmaster Genel konular sorunlar Webmaster genel konular sorular sorunlar

Like Tree1Beğeniler
  • 1 Post By Cappystarj0e

Cevapla
 
LinkBack Seçenekler
  1  
Alt 16-02-2011, 02:04:30
 
Standart Graph API + JavaScript = Facebook Videoları

Bu konuda anlattığım sistemin, server tarafında değil, kullanıcı tarafında işleyen çeşididir.

Sadece üç satırla kendi upload ettiğiniz videoları veya upload edilen profile olan arkadaş bir profille ulaşılan videoları, facebook access_token'i kullanarak sitelerinizde gösterebilirsiniz.

Hem de serverınızı kastırmadan!
Çünkü tüm video işlemleri Javascript ile kullanıcının bilgisayarında gerçekleşiyor...


HTML-Kodu:
<script type="text/javascript" src="Cappystarj0e.js"></script>
<script type="text/javascript">facebook('116667565045754');</script>
<div id="Cappystarj0e"></div>

yukarıdaki kodda facebook('...') içerisindeki noktalı yere facebook video id gelecek. Bunu ister aşağıda verilen Cappystarj0e.js ile kullanırsınız, isterseniz .js dosyasını .php dosyasına gömerek print ederek kullanırsınız. Orası size kalmış. Yol göstermesi bizden, icraat sizden...


Aşağıda Cappystarj0e.js dosyasının açık kaynak kodunu bulabilirsiniz. Kaynakta kendi sahip olduğum profile ait access_token var. Dilerseniz, upload yaptığınız profili bu profile arkadaş edip, videolarınızı görüntüleyebilirsiniz veya kendi access_token'ınız ile kendi video işlemlerinizi yapabilirsiniz.

Cappystarj0e.js:

HTML-Kodu:
//	16.02.2011 - 01:30
//	http://www.r10.net/members/16990-cappystarj0e.html
function facebook(url) {
	var Cappystarj0e = '163577513694456|51a714c4cf4c001b0d6f59e8-100000456858951|U-Yvb4rqKhMWp_SlX6WvEv87Yaw';
	var r10 = document.getElementsByTagName("head")[0];         
	var CSJ = document.createElement('script');
		CSJ.type = 'text/javascript';
		CSJ.src = 'https://graph.facebook.com/' + url + '?access_token=' + Cappystarj0e + '&callback=Cappystarj0e';
	r10.appendChild(CSJ);
}
function Cappystarj0e(video){
	link = encodeURIComponent(video.source);
	embed = '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="500" height="400" id="CSJ" align="middle"><param name="allowScriptAccess" value="sameDomain" /><param name="allowFullScreen" value="true" /><param name="movie" value="https://www.drbvitamins.com/modules/mod_jwmedia/player.swf?file=' + link + '" /><param name="quality" value="high" /><param name="bgcolor" value="#000000" /><embed src="https://www.drbvitamins.com/modules/mod_jwmedia/player.swf?file=' + link + '" quality="high" bgcolor="#000000" width="500" height="400" name="videom" align="middle" allowFullScreen="true" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.adobe.com/go/getflashplayer" /></object>';
	document.getElementById('Cappystarj0e').innerHTML = embed;
}
Her çeşit sisteme entegre edilebilir. Ben entegre yapmıyorum, lütfen pm atmayınız, zaten çok kolay bir kullanımı var.

Güle güle kullanın
Bu mesajınızı beğenenler: EsKO

Konu Cappystarj0e tarafından (22-03-2011 Saat 15:19:28 ) değiştirilmiştir..
Alıntı ile Cevapla
  2  
Alt 16-02-2011, 02:17:59
Üyeliği durduruldu
 
Standart

kod güzel.

aklıma bi şey takıldı graph a birkaç video birden soramıyormuyuz ? yada Fql kullanarak id sini bildiğin videoları isteyemiyormusun ?
Alıntı ile Cevapla
  3  
Alt 16-02-2011, 03:37:39
mathematician
 
Standart

bu access token'ınla her videoya erişemezsin, public olsalar bile, örnek vereyim

video id : 10150094916432891

bu sayfadan mp4'ü alabilirsin: http://www.facebook.com/ajax/flash/e...50094916432891

ama senin token'ınla maalesef erişilmiyor:

https://graph.facebook.com/101500949..._SlX6WvEv87Yaw

erişmesi de saçma olurdu zaten
__________________
Alıntı ile Cevapla
  4  
Alt 16-02-2011, 04:29:39
Üyeliği durduruldu
 
Standart

Alıntı:
fatal Nickli Üyeden Alıntı Mesajı göster
bu access token'ınla her videoya erişemezsin, public olsalar bile, örnek vereyim

video id : 10150094916432891

bu sayfadan mp4'ü alabilirsin: http://www.facebook.com/ajax/flash/e...50094916432891

ama senin token'ınla maalesef erişilmiyor:

https://graph.facebook.com/101500949..._SlX6WvEv87Yaw

erişmesi de saçma olurdu zaten
ilgili grubun tüm video linklerini alabiliyorum kurcalayınca oluyo olmuyo diye kestirip atma, evet public lere ulaşamıyor ama zaten site sahipleride public yapmak istemiyor burdan bakılırsa olaya iş değişiyo

hatta ( istenirse o filimin tüm partları tek seferde alınabilir )
linki kopyalayıp çalışmıyo demeyin &amp; => & bu şekilde değişecek
Kod:
<fql_query_response xmlns="http://api.facebook.com/1.0/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" list="true">
  <video>
    <src>http://video.l3.fbcdn.net/cfs-l3-ash2/42131/917/141273642551259_15335.mp4?oh=1211cbf8cce102dce7df1b0f70c5698e&amp;oe=4D5DDB00&amp;l3s=20110215182544&amp;l3e=20110217183544&amp;lh=0559da4c22867502c336b</src>
  </video>
  <video>

    <src>http://video.ak.fbcdn.net/cfs-ak-ash2/33153/502/116408475071663_53605.mp4?oh=f8f896463f0ecbfe83e6daa186c611ea&amp;oe=4D5DDB00&amp;__gda__=1297996544_1fccf22eef95516717aef04309688c76</src>
  </video>
</fql_query_response>

Not: Bu arada ben merakımı giderdim Cappystarj0e, senin token i daha fazla kurcalamıyacam, sana tavsiyem $access_token bilgini gizli tut, bir çok şey yapılabiliyor

Konu ardx tarafından (16-02-2011 Saat 05:04:21 ) değiştirilmiştir..
Alıntı ile Cevapla
  5  
Alt 16-02-2011, 06:33:08
 
Standart

Alıntı:
fatal Nickli Üyeden Alıntı Mesajı göster
bu access token'ınla her videoya erişemezsin, public olsalar bile, örnek vereyim

video id : 10150094916432891

bu sayfadan mp4'ü alabilirsin: http://www.facebook.com/ajax/flash/e...50094916432891

ama senin token'ınla maalesef erişilmiyor:

https://graph.facebook.com/101500949..._SlX6WvEv87Yaw

erişmesi de saçma olurdu zaten

e baştan beri anlattığımız da bu zaten. 2 konuda da açıklamasını yaptığım gibi senin o videonun sahibi olan bu profili: http://www.facebook.com/fatalerror, benim malum ve senin bal gibi bildiğin diğer profil ile arkadaş yaparsak, bırak o videoyu o profilin sahip olduğu tüm videoları tek çırpıda çekerim.

yani şuradaki: http://www.facebook.com/video/?id=611527890 11 videoyu tek sorguda çekerim.

benim profille arkadaş ettiğin anda bu linkle sorgulama yapılabilir olacak, şu an boş dönüyor.

https://graph.facebook.com/611527890..._SlX6WvEv87Yaw

önemli olan public olanların oynatılıp, oynatılmaması değil, en önce upload edenlerin bu işte sorunu çözmesidir. adamın 50k videosu var, tek tek public mi yapayım diyor. hatta paylaşmak istemeyenler de var. sırf bu yüzden ne kendileri oynatabiliyor ne de başkaları. upload edenler sorunu çözemedikten sonra, upload etmeyen çözse ne olur ki? anlamı yok. upload eden site sahibi işini görebildikten sonra, upload etmeyen vatandaş nasıl olsa bir şekilde o linklere erişir. en olmadı dizi sitesine bağlanır her seferinde yine alır o linki.
Alıntı ile Cevapla
  6  
Alt 16-02-2011, 15:41:38
 
Standart

js güzel fikir, token dısı js ile acaba alınabilinir mi bakmak lazımm
__________________
Ücretsiz Player İster misin? Herşeyi Açan Player!!!
Alıntı ile Cevapla
  7  
Alt 16-02-2011, 16:32:43
 
Standart

Alıntı:
flashguru Nickli Üyeden Alıntı Mesajı göster
js güzel fikir, token dısı js ile acaba alınabilinir mi bakmak lazımm
expand_inline.php kodlarına bakınca sanki json'muş gibi duruyor ama düzgün değil. düzgün bir şekilde json olarak gelseydi, dediğin gibi tokensız, direkt .js socket açarak alınırdı. yine de babayiğitler baksın, belki bir şekilde yolu bulunur.

normalde .js ile expand_inline sayfasına bağlantı kuruluyor. yani pc'ye veri geldiğini görebiliyorum ama browser yasak koyuyor güvenlik sebebi yüzünden. "same origin policy" diye bir kural var. bu şekilde js ile bağlantı yapıldığında ancak aynı domain üzerinden veri aktarımına izin veriyor tüm browserlar. yukarıdaki kodda da zaten veriyi cURL'daki gibi text çıktısı olarak alamıyoruz. array gibi, nesne gibi alıyoruz ve konumunu belirtip dilediğimizi içinden çekiyoruz. "video.source, video.name" gibi.
Alıntı ile Cevapla
  8  
Alt 16-02-2011, 16:35:23
 
Standart

Alıntı:
Cappystarj0e Nickli Üyeden Alıntı Mesajı göster
expand_inline.php kodlarına bakınca sanki json'muş gibi duruyor ama düzgün değil. düzgün bir şekilde json olarak gelseydi, dediğin gibi tokensız, direkt .js socket açarak alınırdı. yine de babayiğitler baksın, belki bir şekilde yolu bulunur.

normalde .js ile expand_inline sayfasına bağlantı kuruluyor. yani pc'ye veri geldiğini görebiliyorum ama browser yasak koyuyor güvenlik sebebi yüzünden. "same origin policy" diye bir kural var. bu şekilde js ile bağlantı yapıldığında ancak aynı domain üzerinden veri aktarımına izin veriyor tüm browserlar. yukarıdaki kodda da zaten veriyi cURL'daki gibi text çıktısı olarak alamıyoruz. array gibi, nesne gibi alıyoruz ve konumunu belirtip dilediğimizi içinden çekiyoruz. "video.source, video.name" gibi.

yani flashdaki crossdomain js de de var diorsn alamıorz , jsonun fuzgun olması onemli degil yeterki js ile alabilelim bu olabiliormu simdi js ile ?
__________________
Ücretsiz Player İster misin? Herşeyi Açan Player!!!
Alıntı ile Cevapla
  9  
Alt 16-02-2011, 17:00:45
 
Standart

Alıntı:
flashguru Nickli Üyeden Alıntı Mesajı göster
yani flashdaki crossdomain js de de var diorsn alamıorz , jsonun fuzgun olması onemli degil yeterki js ile alabilelim bu olabiliormu simdi js ile ?
json'ın düzgün gelmesi önemli, aksi takdirde gelen veri kullanılamıyor. js ile veriler geliyor ama normal kullanıcının görebileceği gibi değil, ben dışarıdan ayrıca izleyerek verilerin geldiğini görüyorum. expand_inline.php'ye bağlantı kuruluyor veriler dökülüyor. js kodda gelen verileri document.write(gelenveri); yapınca ekrana boş bir text döküyor. yani hiç bir şey. Çünkü tam o anda browser o veriyi kullanmamı yasaklıyor.

işte tüm olay da orada zaten. same origin policy kuralında. flash ile bunu aşmanın bir yolu varmış ama hiç uğraşmadığım için çözemedim. flashla yapılabileceğini tahmin ediyorum. normalde flashda da aynı domain kuralı var ama bir şekilde bu aşılabiliyormuş. crossdomain.xml dosyasında eğer bağlantı kurulacak olan domainin ismi varsa, browser oraya bağlanıyormuş.

buradan ekstra bilgi edinebilirsiniz.
http://kb2.adobe.com/cps/142/tn_1421...n_policy_files

yanlış anlamadıysam, kendi playerımızın crossdomain.xml dosyasında expand_inline.php adresine izin verirsek, flash o sayfaya bağlantı kurabilecek. flash o sayfayı alabilirse, belli bir kısmındaki bilgiyi ayıklamak kalıyor sadece...
Alıntı ile Cevapla
  10  
Alt 16-02-2011, 17:03:38
 
Standart

Alıntı:
Cappystarj0e Nickli Üyeden Alıntı Mesajı göster
json'ın düzgün gelmesi önemli, aksi takdirde gelen veri kullanılamıyor. js ile veriler geliyor ama normal kullanıcının görebileceği gibi değil, ben dışarıdan ayrıca izleyerek verilerin geldiğini görüyorum. expand_inline.php'ye bağlantı kuruluyor veriler dökülüyor. js kodda gelen verileri document.write(gelenveri); yapınca ekrana boş bir text döküyor. yani hiç bir şey. Çünkü tam o anda browser o veriyi kullanmamı yasaklıyor.

işte tüm olay da orada zaten. same origin policy kuralında. flash ile bunu aşmanın bir yolu varmış ama hiç uğraşmadığım için çözemedim. flashla yapılabileceğini tahmin ediyorum. normalde flashda da aynı domain kuralı var ama bir şekilde bu aşılabiliyormuş. crossdomain.xml dosyasında eğer bağlantı kurulacak olan domainin ismi varsa, browser oraya bağlanıyormuş.

buradan ekstra bilgi edinebilirsiniz.
http://kb2.adobe.com/cps/142/tn_1421...n_policy_files

yanlış anlamadıysam, kendi playerımızın crossdomain.xml dosyasında expand_inline.php adresine izin verirsek, flash o sayfaya bağlantı kurabilecek. flash o sayfayı alabilirse, belli bir kısmındaki bilgiyi ayıklamak kalıyor sadece...
www.facebook.com/crossdomain.xml
burda tanımlanan yerler haric hiç bi konumdaki flash facebookdan veri alamıor maalesef . , ama js ile gecilior ise raw data yeterli olur bana
__________________
Ücretsiz Player İster misin? Herşeyi Açan Player!!!
Alıntı ile Cevapla
Cevapla


Bookmarks

Seçenekler

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Kapalı
Refbacks are Açık



Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 19:48:44.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.

“İnsanların en hayırlısı, insanlara faydalı olandır”. H.Ş

Hosting by Radore Hosting

İçerik sağlayacı paylaşım sitelerinden biri olan R10.net WebMaster Forum Adresimizde 5651 Sayılı Kanun’un 8. Maddesine ve T.C.K’nın 125. Maddesine göre TÜM ÜYELERİMİZ yaptıkları paylaşımlardan sorumludur. R10.net hakkında yapılacak tüm hukuksal Şikayetler adresi ile iletişime geçilmesi halinde ilgili kanunlar ve yönetmelikler çerçevesinde en geç 1 (Bir) Hafta içerisinde R10.net yönetimi olarak tarafımızdan gereken işlemler yapılacak ve Avukatlarımız size dönüş yapacaktır.
ARGUS_OK

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252