本人最近在做乙個移動專案的時候使用了gsoap開發soap這個協議,在使用的過程中遇見了不少問題和困惑。最後在找了n多網上的資料才得到解決。總結如下:
首先我以提問和回答的方式,希望能接受。
1,在soap協議中怎麼實現多個服務同時執行的方式?
這個問題本人苦惱了很長的一段時間,最後發現是走進了以個誤區。後來在網上找資料,但是網上的兄弟都沒有提及這點,包含gsoap的文件中也沒有提及到這點。後來結合corba的工作流程和soap協議的特點最後發現自己完全是弄錯了,我應該是每個服務對應以個ip位址和埠號,這樣就可以同時啟動兩個服務了。到這裡可能有人會問,你為什麼要這樣啊?告訴你,因為如果兩個服務中的介面的名字相同怎麼區分了。呵呵,等你進行到gsoap開發的時候估計會遇見的。其實至於gsoap的併發服務**網上到處都是,就是同時接受多客戶端鏈結的**。
2,在soap協議中怎麼實現通知了?
這個問題是讓我很長時間都沒有搞清楚的問題。通知其實就是我們最正常的理解的主動告訴的意思。就是當客戶端有訊息要告訴伺服器知道的乙個流程。其實,soap協議中規定了幾中通訊的模式,一種是一問一答 ,二是,主動答。
當然我可能對通訊方式說到比較簡單,但是很直接通俗易懂啊!呵呵,其中通知就是用的主動的答的方式,也就是服務端開啟以個執行緒不停的接受通知。而客戶端有通知傳送的時候,就傳送到雙方協商好的位置。有可能是直接傳送到伺服器的位置,有可能是將訊息傳送到另外的位置,而處理後再傳送給伺服器。呵呵。就這簡單啊。具體的自己慢慢的去理解啊。
上面說的這兩點其實就是soap中很難理解的兩種方式,其他的細節方面的問題可以在網上可以查詢到,比如怎麼生成wsdl檔案,怎麼編輯wsdl檔案。等等,如果是在搞不懂的話我們可以討論討論的呵呵。
寫到這裡有人可能就要問了為什麼要提到tinyxml這個了,其實就是為了配合gsoap來完成一些組織形式,比如組織通知的時候,一定要用到xml的形式,因為gsoap中有個資料型別是_any但是他有是以char×的形式存在的。開始也是不理解,其實後來明白了,其實就是要組織成xml 形式的_any型別的。(這裡在網上根本就找不到這方面的資料,如果實在還是不明白的可以聯絡我的)
我的qq是35151226,郵件是[email protected]呵呵可以晚上聯絡的!
北郵 北理 人大經驗
準備及報考個人經驗 定好目標 詢問學長學姐 確定讀研地點 了解各個選擇的區別 學專博 注意官網及保研論壇 多嘗試 沒有多大興趣的不要亂報 入營後聯絡該地其他學校的導師見面 有機會抓住 不成功爭取9月份 提前做好計畫 學校 專業 失誤 計算所的導師 北大軟微的官網夏令營 北大深研院導師資源 中國科學技...
從北陽回來
昨日已成過去!猥瑣的人常常回頭,看著自己曾經走過的路,感嘆道 曾經我是.希望總在明天!有志的人常常回首,看著自己曾經犯下的錯,感嘆道 以後我要.從北京回來,從北陽回來,滿懷鬥志的我,忘記了在北京時的艱苦奮鬥,忘記了那間又熱又潮的小房間,忘記了那小小會議室裡的12臺電腦.難道就這麼輕易的忘記了麼?在北...
清北學堂 2017 10 01
problem 1.alien input file alien.in output file alien.out time limit 1s memory limit 128m 小y 最近正在接受來自x3 星球的外星人的採訪。在那個星球上,每個人的名字都是乙個正整數。所有在這個星球上的居民都是相互...