webApi的控制台服务】的更多相关文章

1.新建console项目,引用 下面包 2.新建Controller public class UserController : ApiController { public IEnumerable<string> Get() { return new string[] { "Aven", "Grace" }; } } 3.在main里设置 static void Main(string[] args) { //默认使用json返回数据而不论请求是不是…
webApi上传服务,根据FileName重命名,根据Path创建文件夹 /// <summary> /// 上传文件 /// </summary> /// <returns></returns> [HttpPost, Route("upload")] public IHttpActionResult UploadFile() { string defaultPath = ConfigurationManager.AppSettings[…
先建立wcf类库.会默认生成一些试用代码.如下: public class Service1 { public string GetData(int value) { return string.Format("You entered: {0}", value); } }   寄宿控制台.代码如下 using System.ServiceModel; using WcfServiceLibrary1; ServiceHost serviceHost = new ServiceHost(…
由于给予REST的Web服务非常简单易用,它越来越成为企业后端服务集成的首选方法.本文这里介绍一下如何通过微软的Asp.Net WebAPI快速构建REST-ful 服务. 首先创建一个Asp.Net Web应用程序(我这里用的是Visual Studio 2013,它已经内置了Web API2). 在出来的模板中选择Empty(空项目),并勾选WebAPI.点击确定后,就创建了一个空的WebAPI服务. 此时只有一个空项目,还没有任何功能,在进行下一步之前,首先我们来看一下REST的基本操作模…
Asp.Net WebAPI生成的是一个程序集,并不是独立的进程,因此,要运行的时候必须将其承载在相应的宿主上,一般比较常见的是IIS承载.很多时候,我们为了简化部署或者功能集成,需要将其承载到独立的进程上,这种方式一般称之为Self-Host,本文就简单的介绍一下WebAPI的SefHost方法. 首先在Nuget上安装Microsoft.AspNet.WebApi.SelfHost库. 附上我们的WebAPI控制器 public class ValuesController : ApiCon…
默认绑定方式 WebAPI把参数分成了简单类型和复杂类型: 简单类型主要包括CLR的primitive types,(int.double.bool等),系统内置的几个strcut类型(TimeSpan.Guid等)以及string.对于简单类型的参数,默认从URI中获取. 复杂类型的数据也可以直接作为参数传入进来,系统使用media-type formatter进行解析后传给服务函数.对于复杂类型,默认从正文中获取, 例如,对于如下函数 HttpResponseMessage Put(int…
Asp.Net WebAPI服务函数的返回值主要可以分为void.普通对象.HttpResponseMessag.IHttpActionResult e四种,本文这里简单的介绍一下它们的区别. 一.返回void 返回void一般常用于Put和Delete函数. public void Delete(int id)    {    } 当服务函数执行完成后,服务器端并不是啥都不干直接把客户端给断掉,而是发送一个标准的204 (No Content)的Http应答给客户端. HTTP/1.1 204…
REST并没有像传统的RPC服务那样显式指定了服务器函数的访问路径,而是将URL根据一定的规则映射为服务函数入口,这个规则就称之为路由.Asp.Net WebAPI的路由方式和Asp.Net MVC是相同的,它支持两种路由方式,传统的路由映射和特性路由. 路由规则WebApiConfig.cs中定义,它的默认内容如下: public static class WebApiConfig { public static void Register(HttpConfiguration config)…
wcf,webservice采用的是rpc协议,这个协议很复杂,所以每次要传递.要校验的内容也很复杂,别看我们用的很简单,但实际是frame帮我们做掉了rpc生成.解析的事情webapi遵循是rest规范,它只是一种约束,并没有实际的条条框框进行限制,它只是在使用http协议的基础上,简单的遵循了规范而已,而且请求.返回的也是很简单的数据格式 做服务时,你说的都可以作为服务实现技术,但因为wcf.webservice套路太深,传递的数据量太大,所以在移动当道的现在,出于流量考虑,很少被用来作为移…
WebAPI是标准的Http协议,支持Http协议的客户端(如浏览器)都可以访问.但是,有的时候我们如果想在自己的程序中使用WebAPI时,此时就要实现自己的客户端了.我之前介绍过在.Net 4.5中新增的HttpClient库,它对Http操作实现了非常好的封装.我们可以通过它实现Http访问,例如,我们对前文所示的API进行一次Post操作: // POST: api/Values    public void Post(Product value)    {    } 首先对HttpCli…
原文的链接:http://www.cnblogs.com/TianFang/p/3724449.html WebAPI是标准的Http协议,支持Http协议的客户端(如浏览器)都可以访问.但是,有的时候我们如果想在自己的程序中使用WebAPI时,此时就要实现自己的客户端了.我之前介绍过在.Net 4.5中新增的HttpClient库,它对Http操作实现了非常好的封装.我们可以通过它实现Http访问,例如,我们对前文所示的API进行一次Post操作: // POST: api/Values   …
由于WebAPI本身是基于HTTP协议的,在开发过程中,我们可以使用浏览器或Fiddler等HTTP工具辅助开发.与此同时,微软也提供了一些工具方便我们调试,使得开发更加简单快捷,本文就简单的介绍一下这几个工具. 帮助文档 通过帮助文档,我们可以非常直观的看到控制器生成了那些路由,通过这些接口文档可以非常方便的指导客户端开发. 要开启帮助文档,可以参看这篇文章: http://www.asp.net/web-api/overview/creating-web-apis/creating-api-…
什么是angular $http服务 http是angularjs的一个核心服务,用于读取远程服务器的数据,也就是封装了浏览器原生的xhtmlrequest对象,可以直接同外部进行通信. 怎样使用angular $http服务 使用格式 通常使用then方法: $http({ method: 'GET', url: '/someUrl' }).then(function successCallback(response) { // 请求成功执行代码 }, function errorCallba…
当使用WebAPI提供REST服务的时候,一个经常进行的操作是对接口进行测试.Asp.net WebAPI框架本身并没有提供这一接口,不过由于提供的是标准的REST服务,是可以非常方便的使用一些第三方的工具的. 我之前经常用的Chrome的Postman插件来进行测试,它可以用来模拟各种Http请求操作.虽然这个工具也算好用,不过由于它只是一个通用的工具,使用它的时候要构建Http报文头,并根据具体API组装消息体,这也是一件比较麻烦的事情. 今天网上闲逛的时候发现了一个更加好用的测试工具Swa…
21.1   数据服务 21.1.1基本操作功能 Phenixヾ的数据服务,提供了如下的基本操作: 功能 Type URI 参数 完整获取实体集合对象 GET api/Data 分页获取实体集合对象 GET api/Data pageSize=[分页大小]&pageNo=[分页号] 按条件获取实体集合对象 GET api/Data id=[条件对象] 按条件分页获取实体集合对象 GET api/Data id=[条件对象]&pageSize=[分页大小]&pageNo=[分页号]…
一.设置root桌面用户登录 1.vim  /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf 在最后一行添加greeter-show-manual-login=true 2.修改root用户配置文件 vim /root/.profile 修改mesg n 所在行为 tty -s && mesg n || true 二.配置弹控制台服务自启动 1.使用root用户登录桌面系统,搜索gnome,选择启动应用程序: 2.添加自启动服务,在命令栏输入…
1,授权认证与微服务架构 1.1,由不同团队合作引发的授权认证问题 去年的时候,公司开发一款新产品,但人手不够,将B/S系统的Web开发外包,外包团队使用Vue.js框架,调用我们的WebAPI,但是这些WebAPI并不在一台服务器上,甚至可能是第三方提供的WebAPI.同时处于系统安全的架构设计,后端WebAPI是不能直接暴露在外面的:另一方面,我们这个新产品还有一个C/S系统,C端登录的时候,要求统一到B/S端登录,可以从C端无障碍的访问任意B/S端的页面,也可以调用B/S系统的一些API,…
一说到集群服务相信对普通开发者来说肯定想到很复杂的事情,如zeekeeper ,反向代理服务网关等一系列的搭建和配置等等:总得来说需要有一定经验和规划的团队才能应用起来.在这文章里你能看到在.net core下的另一种集群构建方案,通过Beetlex即可非常便捷地构建高可用的集群服务. 简述 Beetlex的Webapi集群应用并没有依赖于第三方服务,而是由Beetlex自身完成:它主要是通过Client和策略监控服务相结合的方式来实现集群化的服务负载访问.以下是服务结构: client一旦从配…
一. 简单说明 开篇就介绍过WebApi和MVC相比,其中优势之一就是WebApi可以不依赖于IIS部署,可以自托管,当然这里指的是 .Net FrameWork 下的 WebApi 和 MVC 相比较,在.Net Core下,当然就另行别论. 下面我们重点介绍的就是WebApi基于控制台程序进行部署. 1. 安装程序集 通过Nuget添加程序集:Microsoft.AspNet.WebApi 和 System.Web.Http.SelfHost. 2. 新建一个WebApi的控制器,里面有一个…
庐山真面目之四微服务架构Consul和Ocelot简单版本实现 一.简介      在上一篇文章<庐山真面目之三微服务架构Consul简单版本实现>中,我们已经探讨了如何搭建基于Consul组件的微服务架构,可能很多人感觉很简单.没错,的确很简单,因为我的每篇文章只会解决一个问题,这样更单纯.更精准.如果我们把所有的东西都放在一篇文章里,太多了,不利于学习和查看.我们通过上一篇文章可知,在客户端访问 Consul 组件管理的业务服务实例是多么的麻烦,需要自己写代码实现.项目少,无所谓,只要项目…
庐山真面目之六微服务架构Consul集群.Ocelot网关集群和Nginx版本实现 一.简介      在上一篇文章<庐山真面目之五微服务架构Consul集群.Ocelot网关和Nginx版本实现>中,我们已经探讨了如何搭建基于Consul服务集群的微服务架构.没错,那个版本也有它自己的问题,每篇文章都会解决一个问题,这样大家就会更能理解每篇文章的技术点.如果我们把所有的东西都放在一篇文章里,太多了,不利于学习和查看.看完上一篇文章后,我们知道如何解决单节点Consul服务不稳定的问题,这样问…
庐山真面目之七微服务架构Consul集群.Ocelot网关集群和IdentityServer4版本实现 一.简介      在上一篇文章<庐山真面目之六微服务架构Consul集群.Ocelot网关集群和Nginx版本实现>中,我们已经探讨了如何搭建基于Consul服务集群和Ocelot网关集群的微服务架构.乍这么一看,好像还是挺完整和完美的了,真的像我们想象的那样吗?当然没有了,只不过是解决了那篇文章需要解决的问题.毕竟我们每篇文章只会解决一个问题,之所以这样做,是因为这样做,大家才会更能理解…
前言 最近在项目中实装应用了gRPC技术,本着能把技术描述出来给别人能看的懂的思想及作为自己学习笔记的心态编写了此文.因为在实际项目中是webApi接口和gRPC接口使用在同一项目服务中,所以本文的例子也是建立在webApi项目而非控制台项目中. 1.gRPC介绍 gRPC 是Google发起的一个开源远程过程调用 系统.该系统基于HTTP/2 协议传输,使用Protocol Buffers 作为接口描述语言. 其他功能: 认证 双向流 流控制 超时 最常见的应用场景是: 微服务框架下,多种语言…
转自:http://www.educity.cn/shujuku/404120.html 成功安装Oracle  11g数据库后,你会发现自己电脑运行速度会变慢,配置较低的电脑甚至出现非常卡的状况,通过禁止非必须开启的Oracle服务可以提升电脑的运行速度.那么,具体该怎么做呢? 按照win7 64位环境下Oracle 11g R2安装详解中的方法成功安装Oracle 11g后,共有7个服务,分别为Oracle ORCL VSS  Writer Service,OracleDBConsoleor…
最近出于工作需要,了解了一下微服务架构(Microservice Architecture,MSA).我经过两周业余时间的努力,凭着自己对微服务架构的理解,从无到有,基于.NET打造了一个演示微服务架构的应用程序案例,并结合领域驱动设计(DDD)以及命令查询职责分离(CQRS)体系结构模式,对事件驱动的微服务系统架构进行了一些实战性的探索.现将自己的思考和收获整理成文,分享给大家. 微服务架构 在介绍源代码之前,我还是想谈谈微服务架构,虽然网上有很多有关微服务架构的讨论,但我觉得在此再多说一些还…
背景 由于公司积极推动各业务产品服务化,得益于容器化技术的不断发展及普及,项目组的服务也更多地基于Mono,Jexus,Docker,Kubernetes等类库.容器.管理工具运行于Linux系统上.业务服务中基于WebApi方式的服务必不可少,本文主要记录在ms的Webapi2框架下,以mono+jexus作为编译.运行框架在linux环境下提供服务这个过程中存在的一些坑. mono版本的选择 截止写本文之前,Mono的最新版本是4.6.0.125,除此版本之外,主要使用.测试的版本还包括,M…
安装oracle 11g R2中的方法成功安装Oracle 11g后,共有7个服务,这七个服务的含义分别为: 1. Oracle ORCL VSS Writer Service:Oracle卷映射拷贝写入服务,VSS(Volume Shadow Copy Service)能够让存储基础设备(比如磁盘,阵列等)创建高保真的时间点映像,即映射拷贝(shadow copy).它可以在多卷或者单个卷上创建映射拷贝,同时不会影响到系统的系统能.(非必须启动) 2. OracleDBConsoleorcl:…
中的方法成功安装Oracle 11g后,共有7个服务,这七个服务的含义分别为: 1. Oracle ORCL VSS Writer Service: Oracle卷映射拷贝写入服务,VSS(Volume Shadow Copy Service)能够让存储基础设备(比如磁盘,阵列等)创建高保真的时间点映像,即映射拷贝(shadow copy).它可以在多卷或者单个卷上创建映射拷贝,同时不会影响到系统的系统能.(非必须启动) 2. OracleDBConsoleorcl:Oracle数据库控制台服务…
HTTP使用BASIC认证,WebAPI使用[HTTPBasicAuthorize]标记控制器就是使用了BASIC认证. BASIC认证的缺点HTTP基本认证的目标是提供简单的用户验证功能,其认证过程简单明了,适合于对安全性要求不高的 系统或设备中,如大家所用路由器的配置页面的认证,几乎 都采取了这种方式.其缺点是没有灵活可靠的认证策略,如 无法提供域(domain或realm)认证功能,另外,BASE64的加密强度非常低,可以说仅 能防止sohu的搜索把它搜到了. 当然,HTTP基本认证系统也…
中的方法成功安装Oracle 11g后,共有7个服务, 这七个服务的含义分别为: 1. Oracle ORCL VSS Writer Service: Oracle卷映射拷贝写入服务,VSS(Volume Shadow Copy Service)能够让存储基础设备(比如磁盘,阵列等)创建高保真的时间点映像,即映射拷贝(shadow copy).它可以在多卷或者单个卷上创建映射拷贝,同时不会影响到系统的系统能.(非必须启动) 2. OracleDBConsoleorcl:Oracle数据库控制台服…