Quantcast
Channel: devangelist » json
Viewing all articles
Browse latest Browse all 3

ASP.NET Webservice – jQuery

$
0
0

Der Trend der singlepage-Applications schreitet ganz klar voran. Der erste Schritt dafür ist das neuladen der Seite zu reduzieren und – mithilfe von jQuery – nichts einfacher als das.

GET und POST

Ein Problem von GET-Requests mit Javascript/jQuery ist die Sicherheit, da GET-Requests von überall gemacht werden können. Man spricht dabei über XSS (Cross-site-scripting). Mit POST-Requests hingegen gibt es dieses Problem in dem Form nicht, da nur Abfragen von der selben Domain gemacht werden können, somit sollte im Zweifelsfall immer ein POST verwendet werden.

POST-Request in jQuery:

$.ajax({
    type        : "POST",
    url         : "Webservice.asmx/HelloWorld",
    data        : "",
    contentType : "application/json; charset=utf-8",
    dataType    : "json",
    success     : function(result) {
        // ...
    }
}
[WebMethod()]
public string HelloWorld()
{
    return "Hello world!";
}

Das übliche Hello-World Beispiel zeigt die Rückgabe von einfachen Datentypen, was nur selten der Fall ist.
Interessant wird es mit komplexen Datentypen, wie Objekte oder generische Listen.

[WebMethod()]
public IList<Customer> GetCustomers()
{
    var list = new List<Customer>();
    list.Add(new Customer());
    // ...

    return list;
}
...
success : function(result) {
    $.each(result.d, function(key, customer) {
        $("#container").append("<p>" + customer.name + "</p>");
    });
}

Der umgekehrte Weg, also das übergeben von Daten an den Webservice funktioniert gleich:

var customer = { Name: 'Max' };

$.ajax({
    ...
    url  : "Webservice.asmx/SetCustomer",
    data : '{"customer":' + JSON.stringify(customer) + '}',,
}

Die Klasse Customer muss auf dem Server existieren damit der Webservice die übergebenen Daten deserialisieren kann.

public class Customer
{
    string Name { get; set; }
}

[WebMethod()]
public bool SetCustomer(Customer customer)
{
    // ...
}

Eigentlich ganz einfach, oder?

Note: There is a rating embedded within this post, please visit this post to rate it.

Viewing all articles
Browse latest Browse all 3

Trending Articles


Vimeo 10.7.1 by Vimeo.com, Inc.


UPDATE SC IDOL: TWO BECOME ONE


KASAMBAHAY BILL IN THE HOUSE


Girasoles para colorear


Presence Quotes – Positive Quotes


EASY COME, EASY GO


Love with Heart Breaking Quotes


Re:Mutton Pies (lleechef)


Ka longiing longsem kaba skhem bad kaba khlain ka pynlong kein ia ka...


Vimeo 10.7.0 by Vimeo.com, Inc.


FORECLOSURE OF REAL ESTATE MORTGAGE


FORTUITOUS EVENT


Pokemon para colorear


Sapos para colorear


Smile Quotes


Letting Go Quotes


Love Song lyrics that marks your Heart


RE: Mutton Pies (frankie241)


Hato lada ym dei namar ka jingpyrshah jong U JJM Nichols Roy (Bah Joy) ngin...


Long Distance Relationship Tagalog Love Quotes