http接口测试小工具
http接口是一种比较常见的接口形式,在电信、金融领域用的比较多,发送的数据,以XML字符串形式的报文居多。今天为了做一个这样接口的测试,做了一个简单的小工具,工具就是一个html页面。
将下面的代码保存为htm,用IE打开,即可使用。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>http接口测试小工具</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<script type="text/javascript">
var $ = document.getElementById;
var xsd ="<?xml version='1.0'?><xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>\r\n<xsl:output method = 'xml' omit-xml-declaration = 'yes' indent='yes'/><xsl:template match='/ | @* | node()'><xsl:copy><xsl:apply-templates select='@* | node()'/></xsl:copy>\r\n</xsl:template></xsl:stylesheet>";
function sendxml(){
var xmlhttp = new ActiveXObject("MICROSOFT.XMLHTTP");
xmlhttp.open("POST", $("url").value, false);
xmlhttp.send($("RSXml").value);
$("RQXml").value = xmlhttp.responseText;
}
function formatXml(textareaid){
var str = $(textareaid).value;
if(str.length==0){
return ;
}
strstr = str.replace(/^\s+|\s+$/g,"");
var source = new ActiveXObject("Msxml2.DOMDocument.6.0");
source.async = false;
source.loadXML(str);
var stylesheet = new ActiveXObject("Msxml2.DOMDocument.6.0");
stylesheet.async = false;
//stylesheet.resolveExternals = false;
stylesheet.loadXML(xsd);
var result = new ActiveXObject("Msxml2.DOMDocument.6.0");
result.async = false;
source.transformNodeToObject(stylesheet, result);
//alert(result.xml);
if(result.xml==''||result.xml==null){
alert('xml报文格式错误,请检查');
return false;
}
$(textareaid).value =result.xml;
}
</script>
</head>
<body>
报送地址:<input type="text" id="url" style="width:80%;"/>
<input type="button" id="send" value="发送" οnclick="sendxml()"/><br/>
报送报文:<textarea id="RSXml" style="width:100%;height:300px;"></textarea>
接收报文:<textarea id="RQXml" style="width:100%;height:300px;"></textarea>
<div style="margin:0px auto;">
<input type="button" id="btnFormat" οnclick="formatXml('RSXml')" value="格式化发送报文"/>
<input type="button" id="btnFormat" οnclick="formatXml('RQXml')" value="格式化接收报文"/>
</div>
</body>
</html>