9

Okul sisteminden notları ile okul notlarını okuyacak bir Chrome/Chromium uzantısı geliştiriyorum. Sorun, sitenin giriş yapmış kullanıcıyı hatırlamamasıdır. Bundan dolayı AJAX kullanamam.Web sitesine krom uzantısı ile giriş yapın ve buradan veri alın

Yalnızca bu sekmede diğer sekmede oturum açmış olursam. Ama bu sayfaya arka planda ve otomatik olarak giriş yapmak istiyorum. Çözüm belki iframe etiket olabilir, ama Krom/Krom okuyamayacağım ve iframe içeriği ile işlemek için izin yok. Kayıtlı kullanıcı olarak sayfada nasıl işlem yapılacağı konusunda bir çözüm var mı? Teşekkür ederiz

cevap

9

Bir form sayfasından javascript aracılığıyla form gönderimini taklit edebilirsiniz. Önce dikkatlice verileri (<form> elemanda değil sadece ne, sen gönderilen gerçekte ne olduğunu bilmek gerekir böylece göndermeden önce formu javascript ile değiştirilmiş olabilir) giriş formu ile gönderilir ve URL neyi incelemek gerekir. Bunu yeterli değilse o zaman orada Firefox için Tamper Data plugin ve sert trafik denetimi için size Wireshark analizörü kullanabilirsiniz, basit şeyler için Chrome'un konsolunu kullanabilirsiniz.

$.ajax({ 
    url: "https://login_form.html", 
    type: "GET", 
    dataType: "html", 
    success: function() { 
     $.ajax({ 
      url: "https://login_form_submits_to.html", 
      type: "POST", 
      data: { 
        "username": "username", 
        "password": "password", 
        "extra_field": "value" 
      }, 
      dataType: "html", 
      success: function(data) { 
        //now you can parse your report screen 
      } 
     }); 
    } 
}); 

İyi bir şey Krom oturumu ve tanımlama devam ettiğini, bu nedenle artık sitenizi açarsanız (el giriş gibidir: Sonra

bir arka plan sayfasında (burada jQuery kullanıyorum) tarayıcı giriş yapmalısınız).

+2

Ben oldukça geç bu tartışmaya olduğumu görebiliyorum, ama sadece veri oturum açma bu şekilde gönderilmesi için herhangi bir güvenlik etkileri olduğunu sormak istedi. –

0

Kullanıcıyı sisteme görünmez olarak kaydetmek ve sonuçları bir JSONP çağrısından almak için cURL'yi kullanma hakkında ne düşünüyorsunuz?

+1

Evet, iyi bir fikir olacağını, ama nasıl uzantısından cURL çalıştırabilirim? –

+0

bir sunucu tarafı komut dosyasına bir AJAX görüşmesi ayarlamak? – BenM