VB Razor 网页在页面上呈现来自远程 URL 的图像?

VB Razor Web Page to render Image from remote URL on page?

我目前正在 Web 应用程序上实施相机流。

我有一个页面 Poll_Camera.vbhtml,当访问这个页面时,我希望该页面只呈现从远程 URL 生成的图像。

每次访问 URL 时,它都会从相机生成新的快照图像。

最好的方法是什么?

我需要每秒刷新一次图像。

我试过

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"

如有任何帮助,我们将不胜感激。

通过执行以下操作设法解决了上述问题。简单且最少的代码。

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。