URI
1个统1资源标识符(Uniform Resource Identifier),唯1标识1个肯定的网络资源,同时也表示资源所处的位置及访问的方式。比如“http://www.baidu.com”。
URI结构:
[传输协议(Scheme)]://[主机名称|域名|IP地址]:[可选端口]/[资源路径]
比以下面的URI是基于WCF服务的.svc文件的URI:http://localhost:8008/Calculator/CalculatorService.svc
传输协议(scheme) :http
IP地址 :localhost
端口 :8008
资源路径 :Calculator/CalculatorService.svc
几种典型传输协议下的URI
1.HTTP和HTTPS
HTTP全称为HyperText Transfer Protocol(超文本传输协议),是建立在TCP/IP簇上的利用层协议。HTTP通过万维网(WWW:World Wide Web)解决超文本的传输。由于其简单、易用,已成了事实上的Internet标准。
HTTPS全称是HyperText Transfer Protocol Over Secure Socket Layer(安全超文本传输协议)。它是为了在WWW上解决安全的数据传输而设计的。HTTPS是采取了SSL(Secure Socket Layer)的HTTP,而SSL是1个进行书记加密的协议,很多安全性要求较高的网站都采取HTTPS。
2.NET.TCP
TCP全称Transport Control Protocol(传输控制协议),在全部TCP/IP簇中处于核心肠位。从全部协议分层结构来看,位于利用层之下,网络层(IP协议)之上。
3.Net.Msmq
消息队列(Message Queuing,也称MSMQ),是微软对消息服务领域的首创性尝试。由于消息队列采取了特殊的通讯机制,对改良和提高系统的可扩大性(scalability)和高可复用行(High Availability)具有重要的意义。消息队列依照可访问性可以分为两种类型的队列:
公共消息队列:公共消息队列发布与活动目录列表中,并被复制到Windows域。由于可以在不知道队列所在及其名称的情况下对公共队列进行检索,因此将公共队列从1台计算机移到另外一台上,其实不会对客户端利用造成影响。
私有消息队列:私有消息队列1般在没有活动目录的工作组环境中使用,它们不支持身份验证,并且需要队列所在的计算机名称才能定位。
在WCF中的利用
HTTP和HTTPS的URI分别使用http和https作为传输协议前缀,它们默许使用的端口分别为80和443,例如:
http://localhost:80/Calculator/CalculatorService.svc
https://localhost:443/Calculator/CalculatorService.svc
WCF通过netTcpBinding支持基于TCP的传输,对TCP的URI,其传输协议前缀均为net.tcp://。默许的端口为808,例如:
net.tcp://localhost:808/Calculator/CalculatorService
在WCF中,基于消息队列的URI,具有net.msmq前缀。net.msmq地址中必须要指明队列的类型(公有队列:public;私有队列:private),默许为公有队列,例如:
net.msmq://localhost/Calculator