Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

HÁLÓZAT SOAP Hagyományos WCF/ASMX webszervizek. HÁLÓZAT REST A webszerviz vezérlése URI-ken keresztül HttpGet, HttpPut, HttpDelete, HttpPost Bookmarks.

Hasonló előadás


Az előadások a következő témára: "HÁLÓZAT SOAP Hagyományos WCF/ASMX webszervizek. HÁLÓZAT REST A webszerviz vezérlése URI-ken keresztül HttpGet, HttpPut, HttpDelete, HttpPost Bookmarks."— Előadás másolata:

1 HÁLÓZAT SOAP Hagyományos WCF/ASMX webszervizek

2 HÁLÓZAT REST A webszerviz vezérlése URI-ken keresztül HttpGet, HttpPut, HttpDelete, HttpPost Bookmarks GetUserPublicBookmarks(string username, string tag)

3 HÁLÓZAT OData Adatok lekérdezése REST „stílusban” Az adatok tipikusan XML formában (pl JSON vagy ATOM) vannak formázva

4 HÁLÓZAT WebClient Viszonylag magas szintű eszköz HTTP alapú kommunikáció kezelésére

5 HÁLÓZAT WebClient WebClient webClient = new WebClient(); // String letöltése webClient.DownloadProgressChanged += (sender, args) => { var bytesRecieved = args.BytesReceived; var totalBytesToRecieve = args.TotalBytesToReceive; var percentage = args.ProgressPercentage; }; webClient.DownloadStringCompleted += (sender, args) => { var downloadedString = args.Result; }; webClient.DownloadStringAsync(new Uri("http://wp7.devportal.hu/"));

6 HÁLÓZAT HttpWebRequest Alacsony szintű eszköz HTTP alapú kommunikáció kezelésére Hozzáférés a headerekhez

7 HÁLÓZAT HttpWebRequest HttpWebRequest request = HttpWebRequest.Create("http://wp7.devportal.hu") as HttpWebRequest; request.BeginGetResponse((iar) => { using (var responseStream = request.EndGetResponse(iar).GetResponseStream()) { byte[] bytes = new byte[(int)responseStream.Length]; responseStream.Read(bytes, 0, (int)responseStream.Length); string responseString = Encoding.UTF8.GetString(bytes, 0, bytes.Length); } }, null);

8 HÁLÓZAT Sockets Igazán alacsony szintű eszköz TCP vagy UDP alapú kommunikáció kezelésére TCP Kapcsolat orientált Megbízható kommunikáció UDP Kapcsolatmentes Nem megbízható

9 HÁLÓZAT Sockets // Osztályszintű (cached) Socket objektum. Ezt fogjuk minden hívásnál használni Socket _socket = null; // Jelzőobjektum az aszinkron műveletek befejezésének jelzésére static ManualResetEvent _clientDone = new ManualResetEvent(false); // Timeout időtartam miliszekundomban const int TIMEOUT_MILLISECONDS = 5000; // Maximálus buffer méret az üzeneteknek const int MAX_BUFFER_SIZE = 2048;

10 HÁLÓZAT Sockets public string Connect(string hostName, int portNumber) { string result = string.Empty; DnsEndPoint hostEntry = new DnsEndPoint(hostName, portNumber); _socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); SocketAsyncEventArgs socketEventArg = new SocketAsyncEventArgs(); socketEventArg.RemoteEndPoint = hostEntry; socketEventArg.Completed += delegate(object s, SocketAsyncEventArgs e) { result = e.SocketError.ToString(); _clientDone.Set(); }; _clientDone.Reset(); _socket.ConnectAsync(socketEventArg); _clientDone.WaitOne(TIMEOUT_MILLISECONDS); return result; }

11 HÁLÓZAT Sockets public string Send(string data) { string response = "Operation Timeout"; if (_socket != null) { SocketAsyncEventArgs socketEventArg = new SocketAsyncEventArgs(); socketEventArg.RemoteEndPoint = _socket.RemoteEndPoint; socketEventArg.UserToken = null; socketEventArg.Completed += delegate(object s, SocketAsyncEventArgs e) { response = e.SocketError.ToString(); _clientDone.Set(); }; byte[] payload = Encoding.UTF8.GetBytes(data); socketEventArg.SetBuffer(payload, 0, payload.Length); _clientDone.Reset(); _socket.SendAsync(socketEventArg); _clientDone.WaitOne(TIMEOUT_MILLISECONDS); } else response = "Socket is not initialized"; return response; }

13 HÁLÓZAT Sockets public void Close() { if (_socket != null) { _socket.Close(); }

14 HÁLÓZAT Sockets És végül az előző oldalakon bemutatott osztály használata: SocketClient client = new SocketClient(); client.Connect(remoteHost, remotePort); client.Send("Hello World"); client.Receive(); client.Close();


Letölteni ppt "HÁLÓZAT SOAP Hagyományos WCF/ASMX webszervizek. HÁLÓZAT REST A webszerviz vezérlése URI-ken keresztül HttpGet, HttpPut, HttpDelete, HttpPost Bookmarks."

Hasonló előadás


Google Hirdetések