I have been in contact with WebService for a long time, but there are not many tutorials for using asp to call, and it is not common to convert to JSON. I will share all this article with you. Please take what you need.
First define the SOAP data, then create the HTTP object, then submit it using POST, and obtain the status code of 200, which means that the call is successful, and then proceed to the next operation...
Take a look at the specific implementation code
<!--#Include virtual=/Include/json.min.asp--><%Dim strxmlDim str'Definition soap message strxml = <?xml version='1.0' encoding='utf-8'?>strxml = strxml & <soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap=' http://schemas.xmlsoap.org/soap/envelope/'> strxml = strxml & <soap:Body> strxml = strxml & <GetCategories xmlns='http://tempuri.org/'>strxml = strxml & <reqcode>30000001</reqcode> 'Parameter 1strxml = strxml & <sign>ssssss</sign> 'Parameter 2strxml = strxml & </GetCategories>strxml = strxml & </soap:Body>strxml = strxml & </soap:Envelope>Set h = createobject(Microsoft.XMLHTTP)'Send Post message h.open to the specified URL POST, http://www.domain.com/WebService.asmx, Falseh.setRequestHeader Content-Type, text/xml; charset=utf-8h.setRequestHeader Content-Length,LEN(strxml)h.setRequestHeader SOAPAction, http://tempuri .org/GetCategoriessh.send (strxml)'Show the returned XML information If h.Status = 200 Then Set xmlDOC = server.CreateObject(MSXML.DOMDocument) xmlDOC.load(h.responseXML) jsonText = xmlDOC.childNodes(1).Text 'Convert to JSON, call json.min.asp Set categories = JSON.parse(jsonText) for i = 0 to categories.Length -1 Response.Write(CStr(categories.get( i).CategoryName)) 'Property for j = 0 to categories.get(i).Labels.Length - 1 'Collection Response.Write(CStr(categories.get(i).Labels.get(j).LabelName)) next next <pre name=code class=vb><script language=javascript runat=Server>if(!Array.prototype.get){Array.prototype.get=function(prop){return this[prop];}}use strict;if(!this.JSON){JSON={ };}(function(){function f(n){return n<10?'0'+n:n;}if(typeof Date.prototype.toJSON!=='function'){Date.prototype.toJSON= function(key){ return isFinite(this.valueOf())?this.getUTCFullYear()+'-'+f(this.getUTCMonth()+1)+'-'+f(this.getUTCDate())+'T'+f(this .getUTCHours())+':'+f(this.getUTCMinutes())+':'+f(this.getUTCSeconds())+'Z':null;};String.prototype.toJSON=Number.prototype. toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf();};}var cx=/[/?/?/?-/?/?/?/?/?-/?/?-/?/?-/?/?-/?/?-/?/?-/?]/g,escapable=/[/ ///x00-/x1f/x7f-/x9f/?/?-/?/?/?/?/?/?-/?-/?/?-/?/?-/?/?-/?/?-/?/?-/?]/g ,gap,indent,meta={'/b':'//b','/t':'//t','/n':'//n','/f':'//f':'//f ','/r':'//r','':'//','//':'///'},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?''+string.replace(escapable,function(a){var c=meta[a]; return typeof c==='string'?c:'//u'+('0000 '+a.charCodeAt(0).toString(16)).slice(-4);})+'':''+string+'';}function str(key,holder){var i,k,v, length,mind=gap,partial,value=holder[key];if(value&&typeof value==='object'&&typeof value.toJSON==='function'){value=value.toJSON(key);}if(typeof rep==='function'){value=rep.call(holder,key,value);}switch(typeof value){case'string':return quote(value);case'number':return isFinite(value)?String(value):'null';case'boolean':case'null':return String(value);case'object':if(!value){return'null';}gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==='[object Array]'){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||'null';}v=partial.length= ==0?'[]':gap?'[/n'+gap+partial.join(',/n'+gap)+'/n'+mind+']':'['+partial.join( ',')+']';gap=mind;return v;}if(rep&&typeof rep==='object'){length=rep.length;for(i=0;i<length;i+=1){ k=rep[i];if(typeof k==='string'){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}} }else{for(k in value){if(Object.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap? ': ':':')+v);}}}}}v=partial.length===0?'{}':gap?'{/n'+gap+partial.join(',/n'+gap )+'/n'+mind+'}':'{'+partial.join(',')+'}';gap=mind;return v;}}if(typeof JSON.stringify!=='function' ){JSON.stringify=function(value,replacer,space){var i;gap='';indent='';if(typeof space==='number'){for(i=0;i<space; i+=1){indent+=' ';}}else if(typeof space==='string'){indent=space;}rep=replacer;if(replacer&&typeof replacer!=='function'&&(typeof replacer!=='object'||typeof replacer .length!=='number')){throw new Error('JSON.stringify');}return str('',{'':value});};}if(typeof JSON.parse!==' function'){JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==='object'){for(k in value){if(Object.hasOwnProperty.call(value,k) ){v=walk(value,k);if(v!==undefined){value[k]=v;}else{delete value[k];}}}} return reviver.call(holder,key,value);}cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return'//u'+(' 0000'+a.charCodeAt(0).toString(16)).slice(-4);});}if(/^[/],:{}/s]*$/.test(text. replace(///(?:[////bfnrt]|u[0-9a-fA-F]{4})/g,'@').replace(/[^///n/r] *|true|false|null|-?/d+(?:/./d*)?(?:[eE][+/-]?/d+)?/g,']').replace(/( ?:^|:|,)(?:/s*/[)+/g,''))){j=eval('('+text+')');return typeof reviver==='function'?walk({'':j},''):j;}throw new SyntaxError('JSON.parse');};}}());</script>Set xmlDOC = nothingElse Response.Write h.Status & Response.Write h.StatusTextEnd if%> Attachment: json.min.asp <script language=javascript runat=Server>if(!Array.prototype.get){Array.prototype.get=function(prop){return this[prop];}}use strict;if(!this.JSON){JSON ={};}(function(){function f(n){return n<10?'0'+n:n;}if(typeof Date.prototype.toJSON!=='function'){Date.prototype. toJSON=function(key){return isFinite(this.valueOf())?this.getUTCFullYear()+'-'+f(this.getUTCMonth()+1)+'-'+f(this.getUTCDate())+'T'+f(this .getUTCHours())+':'+f(this.getUTCMinutes())+':'+f(this.getUTCSeconds())+'Z':null;};String.prototype.toJSON=Number.prototype. toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf();};}var cx=/[/?/?/?-/?/?/?/?/?-/?/?-/?/?-/?/?-/?/?-/?/?-/?]/g,escapable=/[/ ///x00-/x1f/x7f-/x9f/?/?-/?/?/?/?/?/?-/?-/?/?-/?/?-/?/?-/?/?-/?/?-/?]/g ,gap,indent,meta={'/b':'//b','/t':'//t','/n':'//n','/f':'//f':'//f ','/r':'//r','':'//','//':'///'},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?''+string.replace(escapable,function(a){var c=meta[a]; return typeof c==='string'?c:'//u'+('0000 '+a.charCodeAt(0).toString(16)).slice(-4);})+'':''+string+'';}function str(key,holder){var i,k,v, length,mind=gap,partial,value=holder[key];if(value&&typeof value==='object'&&typeof value.toJSON==='function'){value=value.toJSON(key);}if(typeof rep==='function'){value=rep.call(holder,key,value);}switch(typeof value){case'string':return quote(value);case'number':return isFinite(value)?String(value):'null';case'boolean':case'null':return String(value);case'object':if(!value){return'null';}gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==='[object Array]'){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||'null';}v=partial.length= ==0?'[]':gap?'[/n'+gap+partial.join(',/n'+gap)+'/n'+mind+']':'['+partial.join( ',')+']';gap=mind;return v;}if(rep&&typeof rep==='object'){length=rep.length;for(i=0;i<length;i+=1){ k=rep[i];if(typeof k==='string'){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}} }else{for(k in value){if(Object.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap? ': ':':')+v);}}}}}v=partial.length===0?'{}':gap?'{/n'+gap+partial.join(',/n'+gap )+'/n'+mind+'}':'{'+partial.join(',')+'}';gap=mind;return v;}}if(typeof JSON.stringify!=='function' ){JSON.stringify=function(value,replacer,space){var i;gap='';indent='';if(typeof space==='number'){for(i=0;i<space; i+=1){indent+=' ';}}else if(typeof space==='string'){indent=space;}rep=replacer;if(replacer&&typeof replacer!=='function'&&(typeof replacer!=='object'||typeof replacer .length!=='number')){throw new Error('JSON.stringify');}return str('',{'':value});};}if(typeof JSON.parse!==' function'){JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==='object'){for(k in value){if(Object.hasOwnProperty.call(value,k) ){v=walk(value,k);if(v!==undefined){value[k]=v;}else{delete value[k];}}}} return reviver.call(holder,key,value);}cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return'//u'+(' 0000'+a.charCodeAt(0).toString(16)).slice(-4);});}if(/^[/],:{}/s]*$/.test(text. replace(///(?:[////bfnrt]|u[0-9a-fA-F]{4})/g,'@').replace(/[^///n/r] *|true|false|null|-?/d+(?:/./d*)?(?:[eE][+/-]?/d+)?/g,']').replace(/( ?:^|:|,)(?:/s*/[)+/g,''))){j=eval('('+text+')');return typeof reviver==='function'?walk({'':j},''):j;}throw new SyntaxError('JSON.parse');};}}());</script>