+ All Categories
Home > Documents > With jQuery and AJAX Doncho Minkov Telerik Corporation Technical Trainer.

With jQuery and AJAX Doncho Minkov Telerik Corporation Technical Trainer.

Date post: 17-Dec-2015
Category:
Upload: lora-osborne
View: 215 times
Download: 1 times
Share this document with a friend
Popular Tags:
17
External Data Access With jQuery and AJAX Doncho Minkov Telerik Corporation www.telerik. com Technical Trainer
Transcript
Page 1: With jQuery and AJAX Doncho Minkov Telerik Corporation  Technical Trainer.

External Data Access

With jQuery and AJAX

Doncho Minkov

Telerik Corporationwww.telerik.com

Technical Trainer

Page 2: With jQuery and AJAX Doncho Minkov Telerik Corporation  Technical Trainer.

Table of Contents RESTful Web Services XML, JSON, RSS Consuming Our REST with jQuery Consuming Twitter REST with jQuery

Twitter @Anywhere Twitter @Anywhere Features Facebook API

Page 3: With jQuery and AJAX Doncho Minkov Telerik Corporation  Technical Trainer.

RESTful Web ServicesLightweight Architecture for Web

Services

Page 4: With jQuery and AJAX Doncho Minkov Telerik Corporation  Technical Trainer.

What is REST?

"Representational state transfer (REST) is a style of software architecture for distributed hypermedia systems such as the World Wide Web."http://en.wikipedia.org/wiki/Representational_State_Transfer

Application state and functionality are resources

Every resource has an URI All resources share a uniform

interface This natively maps to the HTTP

protocol

Page 5: With jQuery and AJAX Doncho Minkov Telerik Corporation  Technical Trainer.

RESTful Services One URI for a resource, multiple operations Add a new document "RestTalk" in

category "Code" PUT http://mysite.com/docs/Code/RestTalk

Get the document / some page GET http://mysite.com/docs/Code/RestTalk

GET http://mysite.com/docs/Code/RestTalk/pages/3

Remove the document DELETE http://

mysite.com/docs/Code/RestTalk

Retrieve metadata HEAD http://mysite.com/docs/Code/RestTalk

5

Page 6: With jQuery and AJAX Doncho Minkov Telerik Corporation  Technical Trainer.

XML, JSON, RSSComparing the Common Service Data

Formats

Page 7: With jQuery and AJAX Doncho Minkov Telerik Corporation  Technical Trainer.

XML XML is markup-language for encoding documents in machine-readable form Text-based format

Consists of tags, attributes and content

Provide data and meta-data in the same time

7

<?xml version="1.0"?><library> <book><title>HTML 5</title><author>Bay Ivan</author></book> <book><title>WPF 4</title><author>Microsoft</author></book> <book><title>WCF 4</title><author>Kaka Mara</author></book> <book><title>UML 2.0</title><author>Bay Ali</author></book></library>

Page 8: With jQuery and AJAX Doncho Minkov Telerik Corporation  Technical Trainer.

JSON JSON (JavaScript Object Notation)

Standard for representing simple data structures and associative arrays

Lightweight text-based open standard

Derived from the JavaScript language

8

{ "firstName": "John", "lastName": "Smith", "age": 25, "address": { "streetAddress": "33 Alex. Malinov Blvd.", "city": "Sofia", "postalCode": "10021" }, "phoneNumber": [{ "type": "home", "number": "212 555-1234"}, { "type": "fax", "number": "646 555-4567" }]},{ "firstName": "Bay", "lastName": "Ivan", "age": 79 }

Page 9: With jQuery and AJAX Doncho Minkov Telerik Corporation  Technical Trainer.

RSS

RSS (Really Simple Syndication) Family of Web feed formats for

publishing frequently updated works

E.g. blog entries, news headlines, videos, etc.

Based on XML, with standardized XSD schema

RSS documents (feeds) are list of items Each containing title, author,

publish date, summarized text, and metadata

Atom protocol aimed to enhance / replace RSS

9

Page 10: With jQuery and AJAX Doncho Minkov Telerik Corporation  Technical Trainer.

RSS – Example

10

<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel> <title>W3Schools Home Page</title> <link>http://www.w3schools.com</link> <description>Free web building tutorials</description> <item> <title>RSS Tutorial</title> <link>http://www.w3schools.com/rss</link> <description>New RSS tutorial on W3Schools</description> </item> <item> <title>XML Tutorial</title> <link>http://www.w3schools.com/xml</link> <description>New XML tutorial on W3Schools</description> </item></channel></rss>

Page 11: With jQuery and AJAX Doncho Minkov Telerik Corporation  Technical Trainer.

Consuming REST with jQuery

How To Make It Work?

Page 12: With jQuery and AJAX Doncho Minkov Telerik Corporation  Technical Trainer.

Consuming REST With jQuery

Can be done with three methods $.ajax(…)

$.get(…)

$.post(…)

$.get(…) and $.post(…) use $.ajax(…) under the hood

These methods load data from the server Using rest service

Return JSON, Atom, RSS

Page 13: With jQuery and AJAX Doncho Minkov Telerik Corporation  Technical Trainer.

Example of $.ajax(…)

$.ajax({url: "RestService.svc/students/all",type: "GET", timeout: 5000, dataType: "json",success: function (students) {

$('#loadStudentsButton').html("students loaded");

// do something with the students data// visualize them, etc…

}, error: function (err) { $('#loadStudentsButton').html("error: " + err.status); }});

The path of the REST Service(should be on the same

server)

Request type ('GET' or 'POST')

The type of data to expect(JSON,XML)

In case the request is successful

In case the request is unsuccessful

Example of jQuery.ajax(…) get request

Page 14: With jQuery and AJAX Doncho Minkov Telerik Corporation  Technical Trainer.

Example of $.ajax(…)

$.ajax({url: "RestService.svc/students/new",type: "POST",timeout: 5000,contentType: "application/json",data: JSON.stringify(student),success: function () {

$('#createStudentButton').html("student created");

//reload the students},error: function (err) {

$('#createStudentButton').html("error: " + err.status);

}});

The type of data to sent to

the server (JSON, XML)

We have a student object (in JSON) and should make it readable for the server

Example of jQuery.ajax(…) post request

Page 15: With jQuery and AJAX Doncho Minkov Telerik Corporation  Technical Trainer.

Consuming Our REST

with jQueryLive Demo

Page 16: With jQuery and AJAX Doncho Minkov Telerik Corporation  Technical Trainer.

Questions?

External Data Access

Page 17: With jQuery and AJAX Doncho Minkov Telerik Corporation  Technical Trainer.

Homework

Complete the Students project by

consuming the services and developing appropriate UI:

GET /students/subjects

Returns an array with all subjects

GET /students/subject-students

?subject=THE_SUBJECT

Returns an array of students, that have a mark

for THE_SUBJECT


Recommended