Je suis actuellement en train de mettre en œuvre le streaming de caméra sur une application web.Page Web VB Razor pour afficher une image à partir d'une URL distante sur la page?
J'ai une page Poll_Camera.vbhtml, en accédant à cette page je veux que la page ne rende que l'image produite à partir de l'URL distante.
Chaque fois que l'URL est accédée, elle produit une nouvelle image de cliché à partir de la caméra.
Quelle serait la meilleure façon de faire cela?
J'ai besoin d'actualiser l'image toutes les secondes.
J'ai essayé d'utiliser
Dim CameraResponse As WebRequest = WebRequest.Create(CameraUri)
J'ai réussi à le faire avec Javascript/Ajax, mais ce n'est pas idéal puisque l'URL contient le nom d'utilisateur et mot de passe pour la caméra. Je ne veux pas non plus télécharger l'image d'abord dans un répertoire local.
Un autre morceau de code que j'ai essayé où je reçois la réponse à l'écran, mais je pense que l'encodage ou quelque chose peut-être tort:
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
Je reçois la sortie suivante à l'écran
HaveJFIF
J'ai essayé de régler ce qui suit, mais j'ai ensuite un écran noir.
Response.ContentType = "image/jpeg"
Response.Charset = "UTF-8"
Toute aide serait grandement appréciée.
J'ai réussi à résoudre cela avec 2 lignes de code. Va poster une réponse ci-dessous. – Deedz