設定WCF地址具體說明
在學習時WCF,有幾個WCF地址的問題始終沒有解決,我習慣用IIS作主機,設定服務器地址為10.1.1.1,服務器主機名為HOST1,但是始終就沒有解決WCF地址相關問題,歡迎大家切磋學習。
如果采用TCP作為傳輸協(xié)議,在不采用端口共享的情況下,會選擇一個未被使用的端口作為最終監(jiān)聽地址的端口一確保地址的***性,如果采用TCP作為傳輸協(xié)議,同時采用端口共享情況下,會添加一個GUID作為后綴以確保地址的***性 ,對于非TCP作為傳輸協(xié)議,會添加一個GUID作為后綴以確保地址的***性。#t#
在ServiceEndpoint中,定義了一個ListenUriMode屬性,用于指定終結(jié)點的ListenUriMode。在服務器本機訪問http://localhost/WCF/Service.svc,WCF地址可以出現(xiàn)幫助頁面,提示我用
svcutil.exe http://mycoputer/WCF/Service.svc?wsdl
引用服務,這在服務器上沒問題,它可以識別自己的域名http://mycoputer,但在別的機器上則無法解析http://mycoputer這個域名,因此也無法引用http://mycoputer/WCF/Service.svc?wsdl。后來我設置了httpGeturl屬性,將元數(shù)據(jù)的httpget地址強行設置為http://10.8.8.8/WCF/Service.svc/meta,則在其他機器上可以用http://10.8.8.8/WCF/Service.svc/meta?wsdl引用服務。
但是,操作中的基地址仍然為http://mycoputer/WCF/Service.svc,在其他機器調(diào)用服務時會發(fā)生異常,我用 <host>節(jié)添加基地址也不起作用。請問,如何讓客戶端用ip地址訪問WCF服務?
WCF地址服務和客戶端都用主機的IP肯定沒問題
1、服務和客戶端都用主機的域名時,客戶端要能解析這個域名才行,即客戶端計算機需加入相應的DNS服務器地址。
2、服務用域名、客戶端用主機的IP,按理說可以,但是試了N次,得出結(jié)論:不行。