WCF 之 URI

URI

一个统一资源标识符(Uniform Resource Identifier),唯一标识一个确定的网络资源,同时也表示资源所处的位置及访问的方式。比如“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是一个进行书记加密的协议,很多安全性要求较高的网站都采用HTTPS。

2.NET.TCP

TCP全称Transport Control Protocol(传输控制协议),在整个TCP/IP簇中处于核心地位。从整个协议分层结构来看,位于应用层之下,网络层(IP协议)之上。

3.Net.Msmq

消息队列(Message Queuing,也称MSMQ),是微软对消息服务领域的开创性尝试。由于消息队列采用了特殊的通信机制,对于改善和提高系统的可扩展性(scalability)和高可复用行(High Availability)具有重要的意义。消息队列按照可访问性可以分为两种类型的队列:

公共消息队列:公共消息队列发布与活动目录列表中,并被复制到Windows域。因为可以在不知道队列所在及其名称的情况下对公共队列进行检索,因而将公共队列从一台计算机移到另一台上,并不会对客户端应用造成影响。

私有消息队列:私有消息队列一般在没有活动目录的工作组环境中使用,它们不支持身份验证,并且需要队列所在的计算机名称才能定位。

在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

时间: 2024-08-02 04:33:21

WCF 之 URI的相关文章

WCF异常: 提供的 URI 方案“https”无效,应为“http”。 参数名: via

前几天,在用wcf服务是,遇到这么一个问题:WCF异常: 提供的 URI 方案“https”无效,应为“http”. 参数名: via 本身对wcf不是很熟悉,在网上查找一番.终于解决问题.如有遇到此类问题,希望能有所帮助. 原因解析: wcf原引用地址:https://192.168.1.1:8090/temp/sitservice 后因为服务地址改为:http://192.168.1.2:8090/temp/sitservice 然后运行就出现了上述的错误(我只改了web.config 的引

WCF学习之旅----正式篇之基础框架

服务类包括服务契约IWCFService.操作契约OperationContract.和数据契约DataContract. using System; using System.Collections.Generic; using System.Linq; using System.ServiceModel; using System.Text; using System.ServiceModel.Description; using System.Runtime.Serialization;

Wcf体现Restful风格

Wcf体现Restful风格 概述 含状态传输(Representational State Transfer)的软件架构风格.主要特点 1.  资源是由URI来指定: 例如http://example.com/resources/ 2.  对资源的操作 包括获取.创建.修改和删除资源,这些操作正好对应HTTP协议提供的GET.POST.PUT和DELETE方法 3.  传输的资源:Web服务接受与返回的互联网媒体类型,比如:JSON,XML ,YAML 等. 下面通过一个简单的例子逐个问题解决

C# WCF服务入门

之前在公司用的服务端是wcf写的,但是没有深入研究,最近找工作,面试的时候好多人看到这个总提问,这里做个复习 就用微软官方上的例子,搭一个简单的wcf服务,分6步 1 定义服务协定也就是契约,其实就是定义一个服务接口,这玩意后边是公开客户端用的,然后也告诉后边承载程序应该如何加载服务 主要涉及两个特性:一个是ServiceContract(接口的特性,定义这个是服务契约,里边又一些设置参数可以设置一下),OperationContract设置接口的方法的,如果不设置,方法就不会呗公开 这里是直接

●创建silverlight+wcf

创建WCF服务应用程序 创建silverlight应用程序 创建其他 WCF服务应用程序中添加WCF服务 引用类库 添加WCF服务 .cs文件中 using System; using System.Collections.Generic; using System.Linq; using System.Runtime.Serialization; using System.ServiceModel; using System.Text; using SilverlightWCF.DAL; na

WCF客户端配置以及代理-----基于DDD领域驱动设计的WCF+EF+WPF分层框架(4)

写在最前面:转载请注明出处 目录置顶: 关于项目--------------------基于DDD领域驱动设计的WCF+EF+WPF分层框架(1) 架构搭建--------------------基于DDD领域驱动设计的WCF+EF+WPF分层框架(2) WCF服务端具体实现---------基于DDD领域驱动设计的WCF+EF+WPF分层框架(3) WCF客户端配置以及代理-----基于DDD领域驱动设计的WCF+EF+WPF分层框架(4) Domain具体实现------------基于DD

WCF安全 z

WCF custom authentication using ServiceCredentials The generally accepted way of authenticating a user with WCF is with a User Name and Password with the UserNamePasswordValidator class.  So common that even MSDN has a tutorial, and the MSDN document

WCF搭建

WCF搭建 前言:前面三篇分享了下DDD里面的两个主要特性:聚合和仓储.领域层的搭建基本完成,当然还涉及到领域事件和领域服务的部分,后面再项目搭建的过程中慢慢引入,博主的思路是先将整个架构走通,然后一步一步来添加相关元素,使架构慢慢变得丰满.这篇打算分享下应用层的搭建.根据DDD的设计原则,应用层不包含任何领域逻辑,它主要的作用是协调任务,或者叫调度任务,维护应用程序状态.根据博主的理解,应用层是用来隔离领域层的,假设没有应用层,那么我们的界面层可以直接调用领域层的逻辑,也就是说可以直接访问领域

Wcf架构简介

一.概述 Windows Communication Foundation(WCF)是由微软发展的一组数据通信的应用程序开发接口,可以翻译为Windows通讯接口, 它是.NET框架的一部分.由 .NET Framework 3.0 开始引入.WCF的最终目标是通过进程或不同的系统.通过本地网络或是 通过Internet收发客户和服务之间的消息.WCF合并了Web服务..net Remoting.消息队列和Enterprise Services的功能并集成 在Visual Studio中.WCF