2016-04-14 19 views
1

app.js dosyasında kullanıldığında, bir twitter akışını başarılı bir şekilde açacak ve aşağıdaki içeriği görüntüleyebilecek bir çalışma işlevim var (yazdırma yerine konsol.log kullanılıyorsa). Ancak, işlevi alıp index.html içinde bir komut dosyasına koyduğumda, "referenceError: tanıma gerektirilmiyor" hatasını aldım Ayrıca diğer komut dosyalarıyla bir GET hatası alıyorum. Belki de hatalı olarak başvuruyorsam, ama ben sadece bir tane ile onları dahil etmeye çalıştım.HTML içinde twitter API işlevini nasıl çağırır ve sonuçları görüntülerim?

Tüm bunları kendi başıma öğrenmeye çalışıyorum. Geçmişte basit bir statik web sitesi yaptım, ancak sadece html, css ve bazı temel jquery'yi kullanıyorum. Metin çıktısını css ile fonksiyona göre stilize edebilmek istiyorum.

<!DOCTYPE html> 
<html> 
<head> 
<title>Streaming</title> 
<script src="..Twitter/config.js"></script> 
<script src="..Twitter/package.json"></script> 
<script src="..Twitter/app.js"></script> 
<script type = "text/javascript"> 


function displayStream() { 
    var Twit = require('twit'); 
    var T = new Twit(config); 
    var stream = T.stream('statuses/filter', { track: 'Bernie Sanders' }); 
    var count = 0; 
    var totalSentiment = 0; 

     stream.on('tweet', function (tweet) { 
     //Exclude retweets 
     if(tweet.text.startsWith("RT") === false) { 

      print(tweet.text) 
      print("Sentiment score: " + sentiment(tweet.text).score) 
      count += 1; 
      totalSentiment += sentiment(tweet.text).score; 
      print(count + " tweets analyzed"); 
      print("Aggregate Sentiment: " + totalSentiment); 
      print("Average Sentiment:" + (totalSentiment/count).toFixed(2) + "\n"); 
}; 

}); 

}; 

</head> 
<body onload="displayStream();"> 

    <h1>Welcome to my website</h1> 


<p>displayStream()</p> 

+0

'..Twitter/config.js' geçerli bir yol, büyük olasılıkla olmalıdır değil' ../Twitter/config .js'. –

cevap

0

Using Ajax script you can request URL and get response in following way

$.ajax({ 
    url: 'url', 
}) 
.done(function(data) { 
document.getElementById("#myResponse").innerHTML=data; 
}) 
.fail(function() { 
    alert("Ajax failed to fetch data") 
}) 

Using plain Jquery you can achieve same result by following way using Jquery load function

$("#div").load("url", function(response, status, xhr) { 
console.log(response.ok); 
document.getElementById("#myResponse").innerHTML=response; 
if (status == "error") { 
} 
}); 
Eğer fetchApi kullanabilirsiniz sadece İçin

Using pure javascript you can achieve using XMLHttpRequest

var xhr = new XMLHttpRequest(); 
xhr.onreadystatechange = function() { 
if (xhr.readyState == XMLHttpRequest.DONE) { 
alert(xhr.responseText); 
} 
} 
xhr.open('GET', 'url', true); 
xhr.send(null); 
+0

İsterim, ama bu proje için jQuery..just plain javascript –

+0

kullanmamalıyım framework Bir çerçeve/kitaplık için başka bir etiket de eklenmedikçe, salt bir JavaScript cevabı beklenir.' –

+0

Bu kod parçacığı olsa da Soruyu çözmek, [bir açıklama dahil] (http://meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers) yazınızın kalitesini iyileştirmeye yardımcı olur. Gelecekte okuyucular için soruyu cevapladığınızı ve bu kişilerin kod önerilerinizin nedenini bilmeyebileceğini unutmayın. - [İncelemeden] (https://stackoverflow.com/review/low-quality-posts/12011143) – Ferrybig

1

JavaScipt. AJAX'ın yaptığı gibi aynı hissi sağlayacaktır. Örneğin

:

fetch('ApiToFetchTweets', { 
     method: 'get' 
     }) 
     .then(function(response) { 
      console.log('response here: ',response); 


     }).then(function(json) { 
     //console.log('parsed json', json); 
     }).catch(function(ex) { 
     //console.log('parsing failed', ex); 
     }) 

teşekkür,

Dinesh

+0

Bunu koduma göre koyabilir misiniz? Kodunuzu benimkiyle nasıl bütünleştireceğimi bilmiyorum. –

+0

Lütfen twitter yayınlarını almak için hangi sunucu tarafı dilini kullandığınızı onaylayın. Bu yüzden cevabımı ihtiyacınıza göre güncelleyebilirim. – Dineshaws

+0

NodeJs ve twit paketi ile ifade –

İlgili konular