I have a script command that calls a routine to make a web post request. When I run the script using tenscripting it works, when I call the same script from HSTouch or an event, I get the following error:
Error 3
Any help would be greatly appreciated... Thanks, Mike
Error 3
Running script AVControl.vb :Exception has been thrown by the target of an invocation.->Does entry point RokuCmd exist in script? at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor) at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Obj ect obj, Object[] parameters, Object[] arguments) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) at Scheduler.clsRunVBNetScript.ExecuteScript()
Below is the script... the error is triggered by the GetRequestStream() call that is shown in red.Public Sub WebPost(ByVal command As String)
Dim url As String = command
Dim mypost As String = ""
Dim tempCookies As New CookieContainer
Dim request As HttpWebRequest
Dim response As HttpWebResponse
request = DirectCast(HttpWebRequest.Create(url), HttpWebRequest)
request.ContentType = "text/html; charset=UTF-8"
request.ContentLength = mypost.Length
request.Method = "POST"
request.KeepAlive = True
request.AllowAutoRedirect = False
request.CookieContainer = tempCookies
request.Referer = url
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36"
MyWriteLog(1, "Test:", "before getrequeststream")
Dim requeststream As Stream = request.GetRequestStream()
MyWriteLog(1, "Test:", "after getrequeststream")
Dim postbytes As Byte() = Encoding.ASCII.GetBytes(mypost)
requeststream.Write(postbytes, 0, postbytes.Length)
requeststream.Close()
response = DirectCast(request.GetResponse(), HttpWebResponse)
Dim myreader As New StreamReader(response.GetResponseStream())
responsetxt = myreader.ReadToEnd
End Sub
Dim url As String = command
Dim mypost As String = ""
Dim tempCookies As New CookieContainer
Dim request As HttpWebRequest
Dim response As HttpWebResponse
request = DirectCast(HttpWebRequest.Create(url), HttpWebRequest)
request.ContentType = "text/html; charset=UTF-8"
request.ContentLength = mypost.Length
request.Method = "POST"
request.KeepAlive = True
request.AllowAutoRedirect = False
request.CookieContainer = tempCookies
request.Referer = url
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36"
MyWriteLog(1, "Test:", "before getrequeststream")
Dim requeststream As Stream = request.GetRequestStream()
MyWriteLog(1, "Test:", "after getrequeststream")
Dim postbytes As Byte() = Encoding.ASCII.GetBytes(mypost)
requeststream.Write(postbytes, 0, postbytes.Length)
requeststream.Close()
response = DirectCast(request.GetResponse(), HttpWebResponse)
Dim myreader As New StreamReader(response.GetResponseStream())
responsetxt = myreader.ReadToEnd
End Sub
Any help would be greatly appreciated... Thanks, Mike
Comment