我目前正在网络应用程序上实现Camera流。
我有一个页面Poll_Camera.vbhtml,访问此页面时,我希望页面只呈现从远程URL生成的图像。
每次访问URL时,都会从Camera生成一个新的快照图像。
最好的方法是什么?
我需要每隔一秒左右刷新一次图像。
我尝试过使用
Dim CameraResponse As WebRequest = WebRequest.Create(CameraUri)
我已经设法用Javascript / Ajax做到了这一点,但它并不理想,因为URL包含摄像头的用户名和密码。我也不想先将图像下载到本地目录。
我试过的另一段代码我在屏幕上得到了响应,但我认为编码或其他东西可能是错误的:
Try
Dim request As HttpWebRequest = CType(WebRequest.Create(CameraUri), HttpWebRequest)
Dim response As HttpWebResponse = CType(request.GetResponse(), HttpWebResponse)
' Get the stream associated with the response.
Dim receiveStream As Stream = response.GetResponseStream()
' Pipes the stream to a higher level stream reader with the required encoding format.
Dim readStream As New StreamReader(receiveStream, Encoding.UTF8)
HttpContext.Current.Response.write(readStream.ReadToEnd())
response.Close()
readStream.Close()
Catch ex As System.Net.WebException
'Error in accessing the resource, handle it
End Try
我在屏幕上看到以下输出
JFIF
我尝试过设置以下内容,但后来又出现黑屏。
Response.ContentType = "image/jpeg"
Response.Charset = "UTF-8"
非常感谢任何帮助。
答案 0 :(得分:0)
通过执行以下操作来管理以解决上述问题。简单易用的代码。
Try
Dim webClient As New System.Net.WebClient
Response.WriteBinary(webClient.DownloadData(siteUri), "image/jpeg")
Catch ex As System.Net.WebException
'Error in accessing the resource, handle it
End Try
现在我可以将加密的URL解析为我的Poll_Camera.vbhtml,在页面上解密,页面会将相机图像渲染为jpeg。