LoadRunner: 脚本回放时的错误“HTTP 状态码401未授权“

简介: 本文为遇到问题后在英文网站上找到的解答,将其翻译成中文以做记录:LoadRunner:脚本回放时的错误“HTTP 状态码401未授权(当前请求需要验证用户授权)”

原文:http://blog.csdn.net/feishin/article/details/53816649

翻译(转载请标注smooth的博客):

LoadRunner:脚本回放时的错误“HTTP 状态码401未授权(当前请求需要验证用户授权)”

在使用Loadrunner时,我们总会遇到很多常见的错误,比如HTTP status code(HTTP 状态码)401 、500、403等。

在做HTTP/HTML脚本回放时,如果出现HTTP status Code 401 Unauthorized, 表示当前请求需要验证用户授权。该响应必须包含一个适用于被请求资源的 WWW-Authenticate 信息头用以请求用户信息。客户端可以重复提交一个包含恰当的 Authorization 头信息的请求。如果当前请求已经包含了 Authorization 证书,那么401响应代表着服务器验证已经拒绝了这些证书。如果401响应包含了与前一个响应相同的身份验证请求,且浏览器已经至少尝试了一次验证,那么浏览器应当向用户展示响应中包含的实体信息,因为这个实体信息中可能包含了相关诊断信息。

 

可以尝试以下几种解决方案:

方案一:添加“Add web_set_user(username,password,host:port );”;

方案二:在“录制  选项>网络>端口映射>捕获级别(Recording  option>Network>Port mapping>capture level)”中将捕获级别更改为Wininet net level,然后录制该脚本。

方案三:在“运行时间设置>网络协议>参数>高级(Run time settings>Internet Protocol>Preferences>Advanced)”中勾选 Wininet replay instead of sockets(Wininet回放取代网络通信接口sockets),然后运行该脚本。

方案四:如果上述方案都不奏效,使用fiddler录制业务请求,并将LoadRunner和fiddler中的请求做比较。确认loadrunner脚本中是否遗失了某些request(请求)、header(协议表头)/cookie (储存在用户本地终端上的数据), 并造成了该问题的出现。

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

补充:如果fiddler抓包的效果与LoadRunner一样,不存在遗漏请求,那么有可能是出现另一种情况,请参见我的另一篇博文

http://blog.csdn.net/smooth00/article/details/65629918


目录
相关文章
|
1月前
|
缓存 前端开发 UED
前端常见的HTTP状态码
【4月更文挑战第6天】HTTP状态码是服务器对请求的响应状态,分为1xx(处理中)、2xx(成功)、3xx(重定向)、4xx(客户端错误)和5xx(服务器错误)五大类。常见的如200(成功)、404(未找到)、500(服务器内部错误)。理解这些状态码有助于优化前端应用的请求处理和调试。
15 1
|
1月前
|
缓存 大数据 应用服务中间件
什么是http状态码?常见的有哪些(3个)?分别代表什么含义?
什么是http状态码?常见的有哪些(3个)?分别代表什么含义?
|
2月前
HTTP协议的状态码有哪些常见的类型,分别代表什么意思?
HTTP状态码三数字分五类:1xx(信息),2xx(成功),3xx(重定向),4xx(客户端错误),5xx(服务器错误)。例如,200表示请求成功,301表示永久重定向,404表示未找到,500表示服务器内部错误。这些代码帮助诊断网络问题。
21 2
|
2月前
|
编解码 测试技术 索引
性能工具之 Jmeter 使用 HTTP 请求编写 HLS 脚本
在我们简要介绍了 HLS 协议的基础知识,接下来我们详细介绍一种使用 Jmeter 编写压测 HLS 协议脚本的方法。
82 1
性能工具之 Jmeter 使用 HTTP 请求编写 HLS 脚本
|
21天前
|
数据安全/隐私保护
Servlet 教程 之 Servlet HTTP 状态码 1
Servlet教程讲解了HTTP状态码,如200(成功)、404(未找到)和500(服务器错误)。状态码帮助标识HTTP响应的状态,包括继续请求、重定向、权限问题、方法不允许和服务器故障等不同情况。这些代码是通信中的关键反馈元素。
16 3
|
3天前
|
缓存
常见的http状态码
常见的http状态码
6 0
|
13天前
|
缓存
http状态码
http状态码
|
14天前
|
网络协议 安全
【专栏】`curl`是广泛用于网络编程和自动化脚本的命令行工具,支持HTTP、HTTPS等协议
【4月更文挑战第28天】`curl`是广泛用于网络编程和自动化脚本的命令行工具,支持HTTP、HTTPS等协议。在处理大文件或慢速服务器时,设置超时参数至关重要。本文介绍了`curl`的超时参数,如`-m`(最大操作时间)、`-c`(连接超时)、`--dns-timeout`(DNS解析超时)和`-t`(时间条件)。通过示例展示了如何设置这些超时,并提到了一些高级技巧和注意事项,如错误处理和带宽限制。合理设置超时能提高效率和可靠性,对编写健壮的自动化脚本非常有用。
|
16天前
|
API 数据格式
8-20|https://gitlab.xx.com/api/v4/projects/4/trigger/pipeline Request failed状态码400
根据具体情况,逐步检查这些因素,找到引发400状态码的原因,并进行相应的修复。
24 0
|
20天前
|
Java
Servlet 教程 之 Servlet HTTP 状态码 3
该Servlet教程聚焦于HTTP状态码,示例展示如何向客户端发送407错误,提示"Need authentication!!!". 类名为`showError`的Servlet扩展自`HttpServlet`,重写`doGet`和`doPost`方法。当遇到GET或POST请求时,它会设置HTTP状态码为407并附带错误信息。
12 2