Şimdi Ara

HTTP API'leri siteye entegre etmek

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
11
Cevap
1
Favori
452
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Hemen soruma gireyim, mesela bazı sitelerde api.x.com/user=mrunseen diye girip json (ya da xml) den response alıyoruz ya. Ben bunu sitede otomatikleştirmek istiyorum. Json parselemey8 öğrendim fakat bunu nasıl yaparım bir türlü çözemedim, ingilizcemde var mükemmel olmasa da. Ne diye aratmam lazım bunu bilmiyorum mesela.

    < Bu ileti DH mobil uygulamasından atıldı >



  • Bunu "otomatiklestirmek" derken kastettigin nedir? Kendi sitende belirli URL cagrildiginda JSON mi donmek istiyorsun? Olayin JSON parse etmek ile alakasi nedir?

    < Bu ileti tablet sürüm kullanılarak atıldı >
  • Mephalay M kullanıcısına yanıt
    Şöyle olucak mesela.

    Şu örnek bir API linki olsun.

    https://lichess.org/api/user/qwertyuiopzcx

    Normal browserden girince direk JSON olarak gözüküyor.

    Benim yapmak istediğim, kullanıcı bir boşluğa /user/ den sonrasını girecek daha sonra karşısına JSON değil belli variableler parselenmiş şekilde gözükecek.

    -

    Kullanıcı şöyle görüyor:

    Sitedeki boşluğa nick girip enterliyor

    Daha sonra karşısına JSON'dan parselenmiş belli değerler geliyor. Örnek olarak maç sayısı vb



    < Bu mesaj bu kişi tarafından değiştirildi akzidenz -- 19 Şubat 2018; 23:59:1 >
    < Bu ileti DH mobil uygulamasından atıldı >
  • Tamam, soyle bir senaryo yani.
    1) Adam siteye girdi, normal bir html sayfasi. Kullanici adi girebilecegi bir form alani var.
    2) Kullanici adini yazdi ve submit etti.
    3) Yeni onune gelen sayfada, JSON parse edilmis olacak.

    Istedigin bu sanirim oyle mi?
    Yani aslinda senin verdigin linkteki gibi bir goruntuyu elde etmek istiyorsun, 3. adimda.

    Server response donerken html degil, String response donecek ve bu String de JSON olacak. Hangi dil ile yaziyorsun?

    Server response type i olarak application/json yazacak header'a ve yalnizca JSON response u donecek. Yazdigin dile gore de, elinde objeyi JSON seklinde yazdiracaksin. Yani sen parse etmeyi ogrendim yazmistin ya ilk mesajinda, tam tersini yapip objeyi stringify edeceksin.

    Senin verdigin ornekteki response header larini incelersen application/json header'ini gorebilirsin:https://i.hizliresim.com/LbbJYa.png

    Bu arada verdigin linkteki JSON'da "pussyslayer1337" yaziyor, dikkatlerden kacmadi : )



    < Bu mesaj bu kişi tarafından değiştirildi Mephalay -- 20 Şubat 2018; 1:56:21 >
    < Bu ileti tablet sürüm kullanılarak atıldı >




  • Mephalay M kullanıcısına yanıt
    O zaman şöyle yapmam gerekiyor sanırım. Curl la istek yollayıp gelen JSON'u Javascript kullanarak stringe çevireceğim en sonra js den htmle yazarmış gibi sitenin görünen kısmına aktaracağım.

    Formu PHP ile yapacağım sanırım onda user/ den gelen kısmı var olarak gösterip inputu var la mı replaceleyeceğim. ?
    quote:


    Bu arada verdigin linkteki JSON'da "pussyslayer1337" yaziyor, dikkatlerden kacmadi : )


    :)

    < Bu ileti DH mobil uygulamasından atıldı >
  • Curl ile request neden yolluyorsun? Gostermek istedigin data ( JSON formatinda olan ) baska bir server'a mi ait? Yani :

    [kullanici] ---> [senin site] ---> [3. baska bir web sitesi] gibi bir durum mu var ortada?

    Eger boyle ise, ben seni ilk mesajda yanlis anlamis oluyorum; evet tek yapman gereken kullanicinin senin sitene girdigi input a gore diger server dan JSON i cekip gostermek olacak. Bir nevi proxy olacaksin aslinda.

    Ama eger data sendeyse, var olan datayi JSON ile gostereceksin yalnizca. Aslinda response donerken Content-type i application/json yapacaksin ve String doneceksin, basit bir sey bu.

    ---

    " Curl la istek yollayıp gelen JSON'u Javascript kullanarak stringe çevireceğim " demissin ; Curl ile istek yolluyorsan server side 'a gelmissin demektir. Yani kullanici input a yazmis yazacagini, server a request gelmis. Bu noktadan sonra Javascript ile JSON parse edemezsin. Curl response ' unu PHP ile parse edip, string e cevirmen gerekiyor.

    Alternatif olarak, kullanici input u submit ettiginde, Ajax kullanarak XHR request i yazabilirsin, boylece request senin server a hic gelmez; gelen response u da JS kullanarak stringify edip gosterebilirsin ayni sayfada.

    < Bu ileti tablet sürüm kullanılarak atıldı >




  • Verdiğim örnek:
    https://github.com/ornicar/lila/blob/master/README.md#http-api

    Evet, dediğiniz gibi 3. bir siteden veri alacağım.

    Bahsettiğiniz şeyi araştıracağım, teşekkürler.



    < Bu mesaj bu kişi tarafından değiştirildi akzidenz -- 20 Şubat 2018; 16:5:11 >
    < Bu ileti DH mobil uygulamasından atıldı >
  • şu sayfa dediğimi anlatıyor sanırımhttps://www.w3schools.com/js/js_json_http.asp
  • $json = file_get_contents("https://lichess.org/api/user/qwertyuiopzcx");
    $array = json_decode($json,true);
    print_r($array);
    echo "adamin kullanici adi: {$array['username']}";

    < Bu ileti DH mobil uygulamasından atıldı >
  • https://github.com/3mirhan/lichess-php durum şu. formdaki veriyi işlersem amacıma ulaşmış olacağım
    https://github.com/3mirhan/lichess-php/issues/2 şimdi de jsonu decodeleyemiyorum



    < Bu mesaj bu kişi tarafından değiştirildi akzidenz -- 11 Mart 2018; 14:53:49 >
    < Bu ileti DH mobil uygulamasından atıldı >
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.