閑談一下,最近和客戶進(jìn)行對(duì)接Scoket 本地的程序作為請(qǐng)求方以及接受方,對(duì)接Scoket 的難度實(shí)在比較大,因?yàn)樯婕暗巾憫?yīng)方返回的報(bào)文的不一致性,對(duì)于返回的報(bào)文的格式我需要做反序列化的難度增大了不少,下面我就談?wù)勅绻谶M(jìn)行對(duì)接Scoket API 的接口的。方便大家,節(jié)省時(shí)間,少走彎路。大大的提高自己的開(kāi)發(fā)的效率,當(dāng)然我介紹的只是基于.NET Scoket API 的應(yīng)用。
一.Scoket 的簡(jiǎn)介以及和WebServices WCF的區(qū)別
1.網(wǎng)絡(luò)上經(jīng)常通過(guò)程序進(jìn)行雙方的通信,但是在這個(gè)過(guò)程中,需要進(jìn)行數(shù)據(jù)的交換。那么在這個(gè)過(guò)程中,需要進(jìn)行建立網(wǎng)絡(luò)的通訊。
2.通過(guò)請(qǐng)求方發(fā)出一段報(bào)文,給響應(yīng)方,進(jìn)行接收,并返回請(qǐng)求報(bào)文的結(jié)果。
3.所以基于Socket本質(zhì)是編程接口(API),對(duì)TCP/IP的封裝,TCP/IP也要提供可供程序員做網(wǎng)絡(luò)開(kāi)發(fā)所用的接口(經(jīng)過(guò)3次握手),這個(gè)就是所謂的Socket編程接口。
4.基于Scoket API 的編程的接口 與WebServices 以及 WebAPI不同的后者都是基于HTTP請(qǐng)求的,但是WCF整合了原有的windows通訊的 .NET Remoting,WebService,Socket的機(jī)制,并融合有HTTP 和FTP 的相關(guān)技術(shù)。進(jìn)行面向數(shù)據(jù)通信的程序框架。
5.Socket是面向客戶以及服務(wù)器模型而設(shè)計(jì)。
二:Scoket 的綜合的應(yīng)用
1.Scoket流程圖
2.首先請(qǐng)求方進(jìn)行發(fā)送一段報(bào)文。
請(qǐng)求的報(bào)文