2009-08-17 7 views
0

Hier ist ein Problem beim Abrufen zurückgegebener API-Anrufdaten. Ich habe festgestellt, dass Request.Form ("param2") nicht funktioniert.Vbs, um Daten von einem API-Aufruf zu erhalten

ZB: innerhalb. VBS-Skript, die in einem Windows-Server ausgeführt werden, mache ich einen API-Aufruf an externe Skript. Dann gibt das api-Skript eine Zeichenfolge zurück.

ZB: param1 = Baby; param2 = Banane; param3 = haha ​​

fand ich, dass innerhalb vbs, wenn ich request.form verwenden, request.getparam usw., alle nicht funktioniert.

vbs kann nur eine Zeichenfolge erhalten? Wenn das so ist, dann muss ich die Zeichenkette manuell in arrray aufteilen, dann lies sie durch Bezugnahme auf den Array-Index.

Wer kennt keinen einfachen Weg?

Antwort

0

Wenn Sie die Zeichenfolge aus dem externen Skript in dem von Ihnen erwähnten Format abrufen können, sollten Sie sie zweimal teilen können. Der erste Split wäre das Schlüssel/Wert-Paar, dann wäre der nächste Split der Schlüssel, dann der Wert.

Ich habe dies nicht getestet, aber das folgende sollte ein guter Anfang sein.

' here we get the string from the external script 
' the expected results will be in the form: param1=value1;param2=value2;etc. 
str = Call ExternalScriptFunction 

Dim Params 
Dim KeyValue 

Params = Strip(ExternalScriptFunction, ";", -1) 

' Params should now contain an array of key-value pairs, such that: 
' Params(0) = "param1=value1" 
' Params(1) = "param2=value2" 
' etc. 

KeyValue = Split(Params(0), "=", -1) 

' KeyValue should now contain an array of the key and value for the 1st element, so: 
' KeyValue(0) = "param1" 
' KeyValue(1) = "value1" 
Verwandte Themen