2012-10-07 29 views
7

Olası Çoğalt:Ajax çağrı

function getPersonDataFromServer() { 
     $.ajax({ 
      type: "POST", 
      timeout: 30000, 
      url: "SearchPerson.aspx/PersonSearch", 
      data: "{ 'fNamn' : '" + stringData + "'}", 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      success: function (msg) { 
       ... 
      } 
     }); 
    } 

isterim:
How to use Servlets and Ajax?

JavaScript aşağıdaki kodu kullanıyorum için bir Ajax çağrı yapar bunu Java'da da yapmak gibi. Temel olarak, bu verileri sunucuya Ajax çağrıları aracılığıyla gönderen bir Java istemci uygulaması yazmak istiyorum.

Java'da Ajax nasıl yapabilirim?

+0

java asenkron talebidir Ayrıca bkz? – Prasanth

+0

Eh, benim sorunum bu HTTP posta isteği java gerçek uygulama. –

cevap

8

AJAX, başka bir HTTP çağrısından farklı değildir. Temelde Java aynı URL'yi POST olabilir ve hedef sunucu ilgilidir olmamalı meselesi kadarıyla:

kod yukarıdaki fazla veya jQuery AJAX çağrısına az eşdeğerdir
final URL url = new URL("http://localhost:8080/SearchPerson.aspx/PersonSearch"); 
final URLConnection urlConnection = url.openConnection(); 
urlConnection.setDoOutput(true); 
urlConnection.setRequestProperty("Content-Type", "application/json; charset=utf-8"); 
urlConnection.connect(); 
final OutputStream outputStream = urlConnection.getOutputStream(); 
outputStream.write(("{\"fNamn\": \"" + stringData + "\"}").getBytes("UTF-8")); 
outputStream.flush(); 
final InputStream inputStream = urlConnection.getInputStream(); 

. Tabii ki, gerçek sunucu adıyla localhost:8080'u değiştirmeniz gerekir.

Daha kapsamlı bir çözüme ihtiyacınız varsa, JSON marshalling için kitaplığına ve 'a bakın.

Aradığınız Ne

+0

Cevabınız için teşekkürler Tomasz. Ama yine de bir sorum var! Bu isteği http://www.ratsit.se/BC/SearchPerson.aspx web sitesine göndermek istiyorum. Onların müşteri parça kodunu okudum ve şu şekilde yolladıklarını anladım: http://codepaste.net/u7qc1o Şimdi bu ajax isteğini Java ile yazmak istiyorum. : http://codepaste.net/1rbgpx ama yine de hiçbir şey yok, Bana neyin yanlış olduğunu bilmeme yardımcı olabilir misiniz? –

İlgili konular