Ich habe lange Zeit mit WebService in Kontakt gebracht, aber es gibt nicht viele Tutorials für die Verwendung von ASP, und es ist nicht üblich, zu JSON zu konvertieren.
Definieren Sie zuerst die SOAP -Daten, erstellen Sie dann das HTTP -Objekt, senden Sie es dann mit Post und erhalten Sie den Statuscode von 200, was bedeutet, dass der Anruf erfolgreich ist, und gehen Sie dann mit der nächsten Operation weiter ...
Schauen Sie sich den spezifischen Implementierungscode an
<!-#include virtual =/include/json.min.asp-> <%dim strxmldim str'Definition SOAP-Nachricht strxml = <? Xml Version = '1.0' coding = 'utf-8'?> Strxml = strxml & <SOAP: Envelope Xmlns: xsi = 'http: //www.w3.org/2001/xmlschema-instance' xmlns: xsd = 'http: //www.w.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> SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSEN </Signiertes 'Parameter 2Strxml = strxml & </getCategories> strxml = strxml & </SOAP: Body> strxml = strxml & </soap: Hüllkurve> Set H = createObject (microsoft.xmlhttp)' Senden Sie Post -Meldung H.OPEN an das spezifizierte Url -Url -Url. POST, http://www.domain.com/webservice.asmx, falseh.setRequestheader content-type, text/xml; .org/getCategorieSth.send (strxml) 'Zeigen Sie die zurückgegebenen XML -Informationen an, wenn H.Status = 200 dann xmldoc = server.createObject (msxml.domdocument) setze xmldoc.load (H.Responsexml) jsonText = xmldoc.childnodes (1) .Text 'auf JSON konvertieren, rufen Sie json.min.asp set categories = json.parse (jsonText) für i = 0 bis categorien.length -1 response.write (cstr (categories.get (categories.get (categories.get i) .CategoryName)) 'Eigenschaft für J = 0 bis Kategorien.get (i) .labels.length - 1' Sammlungsantwort.Write (CSTR (Categories.get (i) .Labels.get (j) .LabelName)) Nächst als nächstes <pre name = code class = vb> <skript Sprache = javascript runat = server> if (! array.prototype.get) {array.prototype.get = function (prop) {return this [prop];}} Verwenden Sie Strict; if (! this.json) {json = {{{ };} (function () {Funktion f (n) {return n <10? '0'+n: n;} if (typeof date.prototype.tojson! Funktion (Schlüssel) {return isFinite (this.ValueOf ())? this.getUtUfulyear ()+'-'+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, Eskapier =/[/// x00-/x1f/x7f-/x9f/?/?-/?/?/?/?-/?-/?-/?/? -/?/?-/?/?-/?/?-/?]/g, gap, Einklebung, meta = {'/b': '// b', '/t': '// t' , '/n': '// n', '/f': '// f': '// f', '/r': '// r', '': '//', '////// /':' /// '}, Rep; Funktion zitronom (String) {Escapable.lastIndex = 0; Rückgabe Escapable.Test (String)? ''+String.Replace (Esskeilbar, Funktion (a) {var c = meta [a]; Rückgabe typeof c === 'String'? C: '// u'+('0000 '+a.charCodeat (0) .ToString (16)). Slice (-4);})+' ':' '+String+' ';} Funktion Str (Schlüssel, Halter) {var i, k, v, Länge, Mind = GAP, partiell, value = Holder [Schlüssel]; if (value && typeof value === 'Objekt' && typeof value.tojson === 'Funktion') {value = value.tojson (Schlüssel);} if (typeof rep === 'Funktion') {value = rep.call (Holder, Schlüssel, Wert);} Switch (Typof Wert) {case'String ': return quote (value); case'number': return isfinite (value)? String (Wert): 'null'; case'boolean ': case'null': return String (value); case'Object ': if (! Value) {return'null';} gap+= Einleitung; partial = []; if (Object.Prototype.toString.Apply (value) === '[Objekt Array] ') {length = value.length; für (i = 0; i <Länge; 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 === 'Objekt') {length = rep.Length; für (i = 0; i <länge; i+= 1) { k = rep [i]; if (typeof K === 'String') {v = str (k, Wert); 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! == 'Funktion ') {Json.Stringify = Funktion (Wert, Austausch, Space) {var i; gap =' ';cond =' '; if (typeof space ===' nummer ') {für (i = 0; i <space ; i+= 1) {Eindrücke+= ' ';}} else if (typeof space ===' string ') {indent = space;} rep = ersatz; if (Ersatz && TypeOf Austausch! .Length! Funktion ') {json.Parse = Funktion (Text, Reviver) {var j; Funktion Walk (Holder, Schlüssel) {var k, v, value = Holder [Schlüssel]; if (value && typeof value === 'Objekt') {für (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 (Halter, Schlüssel, Wert);} cx.lastIndex = 0; if (cx.test (text)) {text = text.replace (cx, Funktion (a) {return '// u'+(' 0000 '+a.charCodeat (0) .ToString (16)). Slice (-4);});} if (/^[/],: {}/s]*$/. Test (text. Ersetzen (/// (?: [//// bfnrt] | u [0-9a-fa-fa-fa-fa-fa- 4})/g, '@'). Ersetzen Sie (/[^// n/r]] *| true | false | null |-?/d+(?: /./ d*)? (?: [ee] [+/-]?/d+)?/g, ']'). Ersetzen (/(( ?:^|: |,) (?:/s*/[)+/g, ''))) {j = eval ('('+text+')'); typeof reviver === 'function'? = Nichts Response.Write H.Status & Response Anhang: json.min.asp <script Language = javaScript runat = server> if (! array.prototype.get) {array.prototype.get = function (prop) {return this [prop];}} Verwenden Sie 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.getUtUfulyear ()+'-'+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, Eskapier =/[/// x00-/x1f/x7f-/x9f/?/?-/?/?/?/?-/?-/?-/?/? -/?/?-/?/?-/?/?-/?]/g, gap, Einklebung, meta = {'/b': '// b', '/t': '// t' , '/n': '// n', '/f': '// f': '// f', '/r': '// r', '': '//', '////// /':' /// '}, Rep; Funktion zitronom (String) {Escapable.lastIndex = 0; Rückgabe Escapable.Test (String)? ''+String.Replace (Esskeilbar, Funktion (a) {var c = meta [a]; Rückgabe typeof c === 'String'? C: '// u'+('0000 '+a.charCodeat (0) .ToString (16)). Slice (-4);})+' ':' '+String+' ';} Funktion Str (Schlüssel, Halter) {var i, k, v, Länge, Mind = GAP, partiell, value = Holder [Schlüssel]; if (value && typeof value === 'Objekt' && typeof value.tojson === 'Funktion') {value = value.tojson (Schlüssel);} if (typeof rep === 'Funktion') {value = rep.call (Holder, Schlüssel, Wert);} Switch (Typof Wert) {case'String ': return quote (value); case'number': return isfinite (value)? String (Wert): 'null'; case'boolean ': case'null': return String (value); case'Object ': if (! Value) {return'null';} gap+= Einleitung; partial = []; if (Object.Prototype.toString.Apply (value) === '[Objekt Array] ') {length = value.length; für (i = 0; i <Länge; 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 === 'Objekt') {length = rep.Length; für (i = 0; i <länge; i+= 1) { k = rep [i]; if (typeof K === 'String') {v = str (k, Wert); 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! == 'Funktion ') {Json.Stringify = Funktion (Wert, Austausch, Space) {var i; gap =' ';cond =' '; if (typeof space ===' nummer ') {für (i = 0; i <space ; i+= 1) {Eindrücke+= ' ';}} else if (typeof space ===' string ') {indent = space;} rep = ersatz; if (Ersatz && TypeOf Austausch! .Length! Funktion ') {json.Parse = Funktion (Text, Reviver) {var j; Funktion Walk (Holder, Schlüssel) {var k, v, value = Holder [Schlüssel]; if (value && typeof value === 'Objekt') {für (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 (Halter, Schlüssel, Wert);} cx.lastIndex = 0; if (cx.test (text)) {text = text.replace (cx, Funktion (a) {return '// u'+(' 0000 '+a.charCodeat (0) .ToString (16)). Slice (-4);});} if (/^[/],: {}/s]*$/. Test (text. Ersetzen (/// (?: [//// bfnrt] | u [0-9a-fa-fa-fa-fa-fa- 4})/g, '@'). Ersetzen Sie (/[^// n/r]] *| true | false | null |-?/d+(?: /./ d*)? (?: [ee] [+/-]?/d+)?/g, ']'). Ersetzen (/(( ?:^|: |,) (?:/s*/[)+/g, ''))) {j = eval ('('+text+')'); typeof reviver === 'function'?