Error -26631: HTTP Status-Code=400 (Bad Request) for
最近在做性能测试,在开发web脚本的过程中遇到错误:Action.c(15): Error -26631: HTTP Status-Code=400 (Bad Request) for http://xxxxxx/onlinefront/s.do?tl=51&bk=null&optionId=244&p=110
问了很多人没有人知道问题的原因,最后只能自己潜心研究,首先从http status-code400的错误开始分析,这个错误是说请求无法被处理,因为它含有缺失或无效的信息,根据错误信息的描述应该是发送HTTP请求中语法格式不正确导致不被服务器接受,这很可能就是通过LoadRunner 发送HTTP请求是一个不完整。那么首先要确认的就是比较发出的请求和录制的时候请求看是否丢失了http信息来判断错误的原因。
首先选上runtimesettings中extended log的三个选项后运行此脚本,用录制发送相类似请求的日志和选择exection log的http send请求日志进行对比。拷贝这些请求数据包到一个记事本中然后进行比较。在Recording Log(单协议)或Generation Log(多协议)中查找是否存在头数据包,我们发现在执行日志中头域失踪了。
这样解决问题的方法就是用web_add_header("xxxxx","yyyy")添加一个http头,在错误的请求前添加此函数然后回放。
如果你发现所有的HTTP send请求都缺少头数据包,在脚本中的开头添加web_add_auto_header(”XXXXX“,”yyyy“);随着web_add_auto_header的添加,你不需要为每个HTTP send请求都添加web_add_header了。
还有一个解决问题的方法是在Tools -> Recording Options -> Advanced tab中设置,点“headers”按钮,在列表中选择“Record Headers in the List”,然后选择“XXXXX”,因此它可确保在录制过程中录制自己。
最新文章
- 泛函编程(21)-泛函数据类型-Monoid
- php中ckeditor(Fckeditor)的配置方法
- 笔者带你剖析淘宝TDDL(TAOBAO DISTRIBUTE DATA LAYER)
- Unity3d之动态连接Mesh Renderer和Collider
- iOS 小知识-tips
- ASP + ACCESS 上传图片到数据库与将图片读出数据库显示之实现
- 基于 JQUERY 网页 banner
- 数据库数据导入导出系列之五 C#实现动态生成Word(转)
- Fibonacci数列的java实现
- 简单模拟 Spring
- SpringCloud(7)服务链路追踪Spring Cloud Sleuth
- Finance财务软件(科目标签专题)
- Harbor作为Docker的镜像中心
- String 方法indexOf()
- 解决Hibernate:could not initialize proxy - no Session(申明:来源于网络)
- 51nod 1055 最长等差数列
- java CountDownLatch的使用
- 在各OJ上的名号
- 大型运输行业实战_day09_1_日期转换与My97DatePicker插件使用
- [Java] Design Pattern:Code Shape - manage your code shape
热门文章
- bip39
- PAT B1013 数素数 (20 分)
- PAT B1008 数组元素循环右移问题 (20 分)
- PAT B1006 换个格式输出整数 (15 分)
- Drupal性能优化:蜜蜂培训性能优化一
- CAN总线几种正常的“异常”波形
- Hadoop日记Day16---命令行运行MapReduce程序
- [C/C++标准库]_[初级]_[转换UTC时间到local本地时间]
- [BZOJ1135][POI2009]Lyz[霍尔定理+线段树]
- R语言学习 第三篇:数据框