tnblog
首页
视频
资源
登录
愿你出走半生,归来仍是少年
排名
3
文章
317
粉丝
22
评论
14
bootstrap 栅格布局一小例子
剑轩 : 后端写样式有点痛苦哇
一点flex布局的运用
剑轩 : 后端写样式有点痛苦哇
vue.js常用指令
剑轩 : 可以可以,多总结一点
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术

webapi与rpc区别

11675人阅读 2019/9/11 17:18 总访问:2077527 评论:0 收藏:0 手机
分类: rpc


首先说rpc,rpc的定义是远程过程调用,通俗讲就是客户端通过网络远程调用服务端的方法,比如一个用java写的method。rpc是基于tcp/ip协议之上的,一般每个rpc框架都定义了自己的协议(就是数据传输的格式,像前几位表示长度,用什么代表整数等等),一般rpc会非常注重效率,比如它会尽量减小传输的数据量以保证传输效率,还会精心设计数据的装包和解包以提升这个过程的速度。http协议在七层网络中属于应用层,其实本质上也可以认为是一种rpc,毕竟它也实现了远程方法调用,只不过速度不快,短链接,网络开销大而已。不过这个协议的设计非常适合一种场景,就是浏览器,跟其他rpc共性不多,所以大家一般说到rpc是不包含http的,restapi就好理解了,它就是http协议在使用过程中的一种规范,就像坐地铁上下电梯,左边总会空出来让人走一样,没有明文规定,只是大家觉得好就这么做了


客户端与服务端必须使用同样的rpc协议。否则是无法通讯的。协议是在开发之前就定义好的,这样大家开发出来的代码才能够互相调用,浏览器是http的,但‘客户端’指的不一定是浏览器,比如:浏览器->JavaWeb服务->thrift服务,这里面浏览器是javaweb服务的客户端,而javaweb服务就是thrift服务的客户端,javaweb通过thrift rpc框架调用服务。

欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739。有需要软件开发,或者学习软件技术的朋友可以和我联系~(Q:815170684)

评价

为什么要使用webapi而不直接使用controller

彼年豆蔻,谁许谁地老天荒。webapi能做的事情,controller都能做,为什么要使用webapi而不直接使用controller呢?这就好比...

webapi转json格式

创建WebApi项目时出现的xml格式,每次都去转换比较麻烦在Global设置全局输出json格式://直接xml干掉为json GlobalConfigu...

控制台应用程序托管webapi

在没有iis的情况下,webapi是可以自托管的so,我们从写一个webapi程序开始:1、创建一个控制台应用程序,然后在控制台应用...

.net core上传图片,文件。webapi 上传图片文件

上传图片的前台代码都完全一样,直接来贴后台的代码吧publicActionResultUploadImage(List<IFormFile>upfile) { ...

使用swagger创建webapi文档描述---详解

在前后端分离开发中,作为后端如何给前端提供有效直观的接口文档呢?没错,就是使用swagger 俗称“丝袜哥”教程:一、首先...

通过PlUpload控件配合webapi接口完成压缩上传文件

最近一段时间都在使用PlUpload做文件上传的功能,研究过后感觉使用起来体验还是比较好的,不过网上的资料很多都记录的很简...

webapi传递大数据

在接口中传输图片进制流或BASE64字符串时,使用FormUrlEncodedContent处理参数时,可能会因为参数太长导致异常无效的URL:U...

AJAX调用webapi上传图片或文件。设置token,设置Authorization Bearer

AJAX调用webapi上传图片或文件,并返回刚上传的文件名。废话不多说直接贴代码吧html相关:<!DOCTYPEhtml> <html&...

.NET HttpClient和webapi相关的东东先记录一点。传递Authorization headertoken

get请求传递Authorization header,tokenstringurl="你请求的url"; stringtoken="yourtoken"; Http...

webapi报错:Attribute routes with the same name 'Get' must have the same template

是因为 asp.net core 中默认创建的 api controller 中的 Get(id) Action的属性都是[HttpGet("{id}", Name = &quo...

net core webapi版本控制

webapi的版本控制好处很多,要实现其实也比较简单。在webapi中根据不同的版本创建文件夹。然后在不同的api里边添加不同的路...

net core webapi路由

如下我们可以通过路由传递两个参数请求地址参考如下: https://localhost:5001/api/home/aojiancc2/2622最后两个可以作为参...

.net webapi Newtonsoft.Json返回需要的字段,忽略某些字段,修改字段名,动态返回需要的字段等

有时候我们在写webapi的时候,不想把正常用的对象所有字段都返回,我们需要进行一些筛选,忽略某些字段,大概说一下几种方法...

.net core webapi json相关,全局配置,时间格式化首字母小写等

在ConfigureServices中可以进行全局json配置,例如,全局处理一下事件格式问题services.AddMvc(option=> { //option.F...

net core webapi运用自定义json格式

接上一篇net core api json相关,全局配置,时间格式化,首字母小写等:http://www.tnblog.net/aojiancc2/article/details/2...