龙空技术网

Labview如何将图片通过HTTP上传

金太狼工控 80

前言:

眼前大家对“自己的网站怎么上传图片呢”大致比较重视,同学们都想要学习一些“自己的网站怎么上传图片呢”的相关文章。那么小编在网络上网罗了一些关于“自己的网站怎么上传图片呢””的相关内容,希望姐妹们能喜欢,咱们一起来学习一下吧!

一、概述

在做视觉和一些界面截图时,需要将保存下来的图片保存到本地,同时还要上传到云平台或内网服务器,上传的方式有很多种,最为常用的有ftp和http这两种。由于篇幅有限,本文主要讲解如何通过http的方式来进行图片上传。

Labview通过HTTP上传图片时,需要将图片转换成Base64编码字符串,再以JSON格式通过POST上传。

下面将着重介绍基于Labview的HTTP客户端的POST方法,以及如何将图片转换成Base64编码。

二、Labview的HTTP客户端POST方法

在labview中,要发送HTTP协议的命令,可以使用HTTP Client VI,该VI可以向Web服务器发送HTTP请求并接收HTTP响应。该VI提供了GET、POST、PUT、DELETE等常见的HTTP方法,以及可以定义HTTP头和内容的选项。如下图所示:

Labview编程中的客户端

我们要进行数据上报时,需要用到Post方法,首先需要打开句柄,再添加头,再调用POST方法,最后再关闭句柄,POST方法需要指定URL地址和JSON格式缓冲区数据,如下图所示:

Labview Post基本方法

三、将图片转换成base64编码字符串

在labview中,如需将图片转换成base64编码,需要使用" base64_fast_encode.vi",如需将base64编码再转换成图片,则需要使用" base64_fast_decode.vi"。这两个VI都可以在以下链接中下载。

除了需要使用" base64_fast_encode.vi"外,还需要将图片转换成通用的图像格式,在labview中默认提供了将LV图像转换成PNGdata的方法。该VI可以换PNG图像转换成普通字符串数据流。然后再用" base64_fast_encode.vi"将普通的字符串数据流转换成base64编码字符串数据流。这样就可以通过POST方法直接上传了。也许有人会问,直接发字符串数据流不可以吗?我觉得如果是在labview程序间发送和接收,是肯定没有问题的,如果发给服务器或第三方语言来接收的话,需要转换成通用的数据编码格式,这样才能支持语言之间数据切换。

而LV图像至PNG数据的方法则是在互连接口的web服务中可以找到,如下图所示:

LV 图像至PNG 数据 方法位置

将图片转换成base64编码字符串后,需要再进行簇捆绑,再转换成JSON格式,通过post方法进行上传。如下图所示:

将PNG图片转换成BASE64编码

四、Base64编码字符串反向验证

通过labview将图片转换成base64编码字符串后,如何判断该数据流是否能再还原成图片呢?通过下方链接

网址可以将base64编码字符串转换成image。

base64 to image

标签: #自己的网站怎么上传图片呢