webapi测试,webapi调试

webapi测试,webapi调试

今天给各位分享webapi测试的知识,其中也会对webapi调试进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

请问html的js调用webapi接口引用jquery,有很方便的GET调用方法:

<!DOCTYPEhtml>

<html>

<head>

<metahttp-equiv="content-type"content="text/html;charset=UTF-8">

<metaname="viewport"content="width=device-width,initial-scale=1">

<!--src值为文件位置路径-->

<scripttype="text/javascript"charset="UTF-8"src="javascript/jquery-1.12.1.js"></script>

<title>测试案例</title>

<!--语法:jQuery.getJSON(url,data,success(data,status,xhr))-->

<scripttype="text/javascript"charset="UTF-8">

functiongetToken(){

$.getJSON("http://localhost/kdapi/api/access_token",{"id":111,"secret":2352532},function(result){

alert(result.access_token);

});

}

</script>

</head>

<body>

<buttononclick="getToken()"style="width:120px;height:60px;">获取Token</button>

</body>

</html>

WebService和Webapi的区别

webapi用的是http协议,webservice用的是soap协议

webapi无状态,相对webservice更轻量级。webapi支持如get,post等http操作

httpsoap关系

http:是一个客户端和服务器端请求和应答的标准(TCP)。http协议其目的是为了提供一种发布和接收htttp页面的方法

一http协议的客户端与服务器的交互:由HTTP客户端发起一个请求,建立一个到服务器指定端口(默认是80端口)的TCP连接。HTTP服务器则在那个端口监听客户端发送过来的请求。一旦收到请求,服务器(向客户端)发回一个状态行,比如”HTTP/1.1200OK”,和(响应的)消息,消息的消息体可能是请求的文件、错误消息、或者其它一些信息。

soap协议:它描述了一种在分散或分布式的环境中如何交换信息的轻量级协议。soap在http协议的基础上,一个基于XML的协议。

不同:都是底层的通信协议,请求包的格式不同而已,soap包是XML格式,http纯文本格式。

关系:SOAP是个通信协议,SOAP在HTTP协议的基础上,把编写成XML的REQUEST参数,放在HTTPBODY上提交个WEBSERVICE服务器(SERVLET,ASP什么的)处理完成后,结果也写成XML作为RESPONSE送回用户端,为了使用户端和WEBSERVICE可以相互对应,可以使用WSDL作为这种通信方式的描述文件,利用WSDL工具可以自动生成WS和用户端的框架文件,SOAP具备把复杂对象序列化捆绑到XML里去的能力。

WCF和WEBAPI我该选择哪个?

1、当你想创建一个支持消息、消息队列、双工通信的服务时,你应该选择WCF

2、当你想创建一个服务,可以用更快速的传输通道时,像TCP、NamedPipes或者甚至是UDP(在WCF4.5中),在其他传输通道不可用的时候也可以支持HTTP。

3、当你想创建一个基于HTTP的面向资源的服务并且可以使用HTTP的全部特征时(比如URIs、request/response头,缓存,版本控制,多种内容格式),你应该选择WebAPI

4、当你想让你的服务用于浏览器、手机、iPhone和平板电脑时,你应该选择WebAPI

SOAP:SimpleObjectAccessProtocol

简单对象访问协议(SOAP)是一种轻量的、简单的、基于XML的协议,它被设计成在WEB上交换结构化的和固化的信息。SOAP可以和现存的许多因特网协议和格式结合使用,包括超文本传输协议(HTTP),简单邮件传输协议(SMTP),多用途网际邮件扩充协议(MIME)。它还支持从消息系统到远程过程调用(RPC)等大量的应用程序。

HTTP协议:应用层

TCP协议:传输层

HTTP协议详解之响应篇

在接收和解释请求消息后,服务器返回一个HTTP响应消息。

HTTP响应也是由三个部分组成,分别是:状态行、消息报头、响应正文

1、状态行格式如下:

HTTP-VersionStatus-CodeReason-PhraseCRLF

其中,HTTP-Version表示服务器HTTP协议的版本;Status-Code表示服务器发回的响应状态代码;Reason-Phrase表示状态代码的文本描述。

状态代码有三位数字组成,第一个数字定义了响应的类别,且有五种可能取值:

1xx:指示信息–表示请求已接收,继续处理

2xx:成功–表示请求已被成功接收、理解、接受

3xx:重定向–要完成请求必须进行更进一步的操作

4xx:客户端错误–请求有语法错误或请求无法实现

5xx:服务器端错误–服务器未能实现合法的请求

常见状态代码、状态描述、说明:

200OK//客户端请求成功

400BadRequest//客户端请求有语法错误,不能被服务器所理解

401Unauthorized//请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用

403Forbidden//服务器收到请求,但是拒绝提供服务

404NotFound//请求资源不存在,eg:输入了错误的URL

500InternalServerError//服务器发生不可预期的错误

503ServerUnavailable//服务器当前不能处理客户端的请求,一段时间后可能恢复正常

eg:HTTP/1.1200OK(CRLF)

2、响应报头后述

3、响应正文就是服务器返回的资源的内容

手把手教你AspNetCore WebApi:认证与授权

这几天小明又有烦恼了,之前给小红的接口没有做认证授权,直接裸奔在线上,被马老板发现后狠狠的骂了一顿,赶紧让小明把授权加上。赶紧Baidu一下,发现大家都在用JWT认证授权,这个倒是挺适合自己的。

Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,服务器生成一个Token便将此Token返回给客户端,以后客户端只需带上这个Token前来请求数据即可,无需再次带上用户名和密码。

Jsonwebtoken(JWT),是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC7519).该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该token也可直接被用于认证,也可被加密。

从图中可以看出主要有两部分组成:1、获取Token,2、通过Token进行授权。

首先,安装JwtBearer包。

接下来,定义一个配置类,我这里为了简单直接用常量代替了,你也可以放在配置文件中。

接下来,定义一个通过用户名和密码,获取Token的控制器。

接下来,添加Token身份认证到容器(Startup.ConfigureServices)。

接下来,添加身份认证到中间件(Startup.Configure)。

接下来,控制器需要授权控制的添加[Authorize]。

最后,我们测试一下接口,效果如下。

这时会返回401,因为身份认证没有通过,说明身份验证起效果了。

接下来我们访问一下GetAccessToken接口,拿到Token,在访问GetTodo接口时放入Token,我们可以看到访问成功了。

目前为止,小明把授权认证搞定了,赶紧给马老板汇报工作去吧。当然这个授权认证还是非常简单的,还有很多等待的小伙伴们去发掘,比如如何自动刷新Token?如何强制Token失效?OAuth其他实现方式等等?大家如果有兴趣,让小明下次告诉你们。

好了,本文到此结束,如果可以帮助到大家,还望关注本站哦!

发表评论
留言与评论(共有 0 条评论)
   
验证码:

相关文章