CollectAPI ile veri çekme

ctnmm22

Centipat
Katılım
4 Şubat 2021
Mesajlar
43
Çözümler
1
Daha fazla  
Cinsiyet
Erkek
Arkadaşlar merhaba. Ben bir tane web sitesi yapıyorum. Henüz bilgisayar mühendisliği öğrencisiyim ve ahım şahım JavaScript öğrenmedik fFakat ücretsiz bir API servisinden veri göstermem gerek. Collect API örneğin IMBD'den ücretsiz veri çekebiliyoruz. Fakat kodu nasıl kullanacağımı bilmiyorum. Yardımcı olur musunuz? CollectAPI'dan verilen kod.
JavaScript:
var data = null;

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.collectapi.com/imdb/imdbSearchById?movieId=tt1375666");
xhr.setRequestHeader("content-type", "application/json");
xhr.setRequestHeader("authorization", "apikey your token");

xhr.send(data);
 
API için token istemiş token'ı nasıl alacağını bilmen gerek. Yoksa istek başarısız döner.
JavaScript:
xhr.setRequestHeader("authorization", "apikey your token");

Sonra da "this.responseText" ile kullanacağın data'yı buradan alman gerekiyor. Örnek:
JavaScript:
let imdbData = this.responseText,
    imdbDiv = document.getElementById("imdb");

imdbDiv.innerHTML = imdbData;

HTML:
<div id="imdb">
    <!-- imdb data --->
</div>

Yeni bir Http Request oluşturur.
JavaScript:
var xhr = new XMLHttpRequest();

Bir eventlistener oluşturur ve "readystatechange" ile istek gittiğinde, geldiğinde vd. işlemlerde durum değişikliği yapar ve bunu dinler.
JavaScript:
xhr.addEventListener("readystatechange", function () {

XMLHttpRequest'in 3 veya 4 adet "readyState" durumu vardır. Done olduğunda koşul sağlanır ve gelen içeriği artık kullanabilirsin.
JavaScript:
if (this.readyState === this.DONE) {

Devamında da .open ile GET açmış, iki adet header başlığı atamış ve .send ile isteği yapmış.
 

Technopat Haberler

Yeni konular

Geri
Yukarı