LabVIEW测试和调试Web服务

news2025/1/13 10:13:30

LabVIEW测试和调试Web服务

发布Web服务至终端前,需要测试HTTP方法VI是否按照预期与客户端进行通信。可直接从LabVIEW项目将Web服务置于调试服务器上,从而允许客户端发送请求至HTTP方法VI。调试服务器提供类似沙盒的环境。

1. (Windows) 右键单击我的电脑下的Web服务项目项,选择应用程序Web服务器»开始(调试服务器)。

(Real-Time) 右键单击RT终端下的Web服务项目项,选择开始(调试服务器)。

2. 打开Add.vi。注意运行按钮表示VI保留为执行,因为LabVIEW加载Web服务,使其可在调试服务器上与客户端通信。

3. 关闭Add.vi。

4. 按照下列步骤,获取客户端调用Add.vi使用的URL:

右键单击Add.vi并选择显示方法URL,显示HTTP方法URL对话框。

在可用服务器下拉菜单中,选择包含本地调试的项,然后单击复制URL按钮。如将服务发布至Web服务器,客户端必须通过其他端口与调试服务器上的Web服务进行通信。

关闭对话框。

如HTTP方法URL对话框打开,则Web服务不响应客户端的任何请求。

5. 将复制得到的URL在浏览器中打开,用实际值替换{值}变量。例如,http://127.0.0.1:8001/TutorialService/Add?b=2&a=3

6. 浏览URL。Add.vi接收到浏览器的HTTP请求,计算a和b的值,并返回响应,包括分配给Add.vi连线板每个显示控件的名称和输出值。本教程中的响应格式为JSON字符串,即接线端的默认输出格式。注意Add.vi有两个分配至连线板的显示控件:c和值。HTTP方法VI在响应中返回这两个值。

{"c":5,"value":"b=2&a=3"}

如发生不可预期事件,编辑Web服务文件前必须停止调试会话,因为LabVIEW保留文件为执行时无法对其进行编辑。

7. 在Subtract.vi上重复执行第4-5步。也可直接更改第5步中的URL,获得Subtract.vi唯一对应的URL映射:http://127.0.0.1:8001/TutorialService/AdditionalOperations/Subtract?b=2&a=3

8. 对Subtract.vi重复第6步。

9. (Windows)右键单击Web服务项目项并选择应用程序Web服务器»停止(调试服务器)。

(Real-Time)右键单击Web服务项目项并选择停止(调试服务器)。

配置客户端访问Web服务的方式

Web客户端通过URL与HTTP方法VI交换数据。后续教程中,将在Web浏览器中输入特定的URL,直接发送数据至HTTP方法VI连线板上的输入控件。

根据下列步骤,定义客户端可用于方法HTTP方法VI的URL:

1. 右键单击Web服务项目项并选择属性,显示Web服务属性对话框。

2. 在HTTP方法VI设置页,注意LabVIEW项目中Web资源文件夹的HTTP方法VI出现在Web服务VI表格中。同时,与Add.vi相比,注意在AdditionalOperations项目项中放置Subtract.vi的方式如何影响URL映射。

3. 在表格中选择Subtract.vi,注意页面底部URL映射选项卡的下列功能:

可在方法下拉菜单中改变HTTP请求的类型。设置Subtract.vi为默认值GET。

可选择禁用LabVIEW用于映射URL至VI的标准格式,自定义显示在服务名称后的URL部分。本教程使用标准URL映射并包含VI名称。

URL栏显示了LabVIEW为HTTP方法VI创建的基本URL。例如,LabVIEW为Subtract.vi创建的默认URL映射为/AdditionalOperations/Subtract。

在更为复杂的Web服务中,可能需要使用该页的其他选项卡配置VI返回输出数据至Web客户端的格式,以及访问权限等安全设置。

4. 单击确定,关闭Web服务属性对话框。

5. 保存Tutorial.lvproj。

发布Web服务至应用程序Web服务器

可将创建的Web服务发布至应用程序Web服务器。在该教程中,您将发布一个独立的Web服务。在更为复杂的应用中,可能需要通过LabVIEW独立应用程序或安装程序发布Web服务。应用程序Web服务器托管Web服务,并提供多种措施以保证网络数据交换的安全性,包括SSL加密。

(Windows)也可将Web服务发布至NI Web服务器。详细信息请参考教程:创建LabVIEW Web服务并将其发布到NI Web服务器。

按照下列步骤,将Web服务发布至运行在本地计算机上的应用程序Web服务器:

1. 右键单击Web服务项目项并选择应用程序Web服务器»发布。此时将显示部署进度对话框。

2. 如LabVIEW成功发布Web服务,单击关闭按钮。Web客户端现可与HTTP方法VI交换数据。

发布Web服务

为Web服务设置应用程序Web服务器

从客户端访问Web服务

按照下列步骤,通过URL从Web浏览器发送数据至发布的Web服务:

1. 右键单击Add.vi并选择显示方法URL,显示HTTP方法URL对话框。

2. 在可用服务器下拉菜单中,选择包含应用程序的项,然后单击复制URL按钮。该URL包含一个与调试服务器URL不同的端口号。LabVIEW使用该端口号与应用程序Web服务器上的Web服务进行通信。

3. 关闭对话框。

4. 复制URL至标准Web浏览器并用数值替换{value}变量,如http://127.0.0.1:8080/TutorialService/Add?b=2&a=3

如客户端与发布的Web服务不在同一个系统上,必须将127.0.0.1替换为托管主机的实际IP地址或主机名称。可在NI Web-based Configuration &Monitoring中自定义主机名称。

5. 浏览器返回JSON响应,包括分配给连线板每个显示控件的输出值。

通过URL发送数据至已部署的应用程序

监控Web服务

按照下列步骤,检查发布至应用程序Web服务器的Web服务状态:

1. 右键单击Web服务项目项并选择应用程序Web服务器»管理Web服务器。NI基于Web的配置和监控在Web浏览器中打开。

2. 单击窗口左侧的Web服务管理按钮。

3. 在已部署的Web服务列表中选择TutorialService。如列表为空,单击刷新按钮。

4. 注意Web服务的状态为运行。使用页面底部的按钮暂停、恢复、重新启动和取消部署Web服务。

5. 在页面右侧,可看到两个HTTP方法VI的URL映射:Add、AdditionalOperations/Subtract,分别对应于相关的HTTP方法。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/156458.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JVM- 第二章-类加载子系统

类加载子系统 2. 类加载子系统 2.1. 内存结构概述2.2. 类加载器与类的加载过程 加载阶段链接阶段初始化阶段 2.3. 类加载器分类 2.3.1. 虚拟机自带的加载器2.3.2. 用户自定义类加载器 2.4. ClassLoader的使用说明2.5. 双亲委派机制2.6. 其他 2. 类加载子系统 2.1. 内存结构…

nacos

文章目录1、认识和安装nacos(单机安装)1.1、下载安装包1.2、解压1.3、端口配置1.4、启动1.5、访问2、nacos快速入门2.1、在父工程中添加依赖2.2、注释掉服务中原有的eureka依赖2.3、添加nacos的客户端依赖2.4、修改配置文件2.5、启动并测试2.6、总结3、n…

19、Java并发 Java wait() 和 notify() 方法

大家有没有发现,其实 「 一文秒懂 」 系列讲述的都是多线程并发开发的问题。这个话题太大了,估计没有上百篇文章都解释不清楚。 本文,我们来讲解下 Java 并发中的基础的基础,核心的核心,Java 并发编程中的最基本的机制…

为什么 APISIX Ingress 是比 Ingress NGINX 更好的选择?

作者容鑫,API7.ai 云原生技术工程师,Apache APISIX Committer。 本文将会对比两个比较流行的 Ingress controller 实现,希望能对读者进行 Ingress controller 选型中有所帮助。 Ingress NGINX 是 Kubernetes 社区实现的 Ingress controller&a…

高通量代谢组学四路筛选法,揭秘“神药”二甲双胍延长寿命的机制

百趣代谢组学分享—研究背景 目前据统计中国糖尿病患者人数达9700万以上,数量达到世界第一。这其中2型糖尿病占到了90%以上。二甲双胍是目前治疗2型糖尿病的一线“明星”药物,因其较少出现低血糖和体重增加副作用而受到广大患者和医生的青睐。代谢组学文…

Replicate Brogaard Stock Volatility Decomposition

文章目录IntroductionData and SampleDownload DataClean DataExtract Estimation Unit and Set Global VariablesImplement Brogaard DecompositionEstimate VAR Coefficients, Matrix BBB, ϵt\epsilon_tϵt​, Σe\Sigma_eΣe​, and Σϵ\Sigma_\epsilonΣϵ​Estimate 15-…

常用的前端大屏 适配方案

方案实现方式优点缺点vm vh1.按照设计稿的尺寸,将px按比例计算转为vw和vh1.可以动态计算图表的宽高,字体等,灵活性较高 2.当屏幕比例跟 ui 稿不一致时,不会出现两边留白情况1.每个图表都需要单独做字体、间距、位移的适配&#xf…

【寒假每日一题】AcWing 4509. 归一化处理

目录 一、题目 1、原题链接 2、题目描述 二、解题报告 1、思路分析 2、时间复杂度 3、代码详解 三、知识风暴 1、cmath头文件相关函数 2、cout大法 一、题目 1、原题链接 4509. 归一化处理 - AcWing题库 2、题目描述 在机器学习中,对数据进行归一化处理…

【C++】list用法简单模拟实现

文章目录1. list的介绍及使用1.1 list基本概念1.2 list的构造1.3 list的迭代器使用1.4 list 赋值和交换1.5 list 插入和删除1.6 list容量大小操作1.7 list 数据存取2. list的模拟实现这次要模拟实现的类及其成员函数接口总览2.1 结点类的实现2.2 迭代器的模拟实现2.3 反向迭代器…

yolov1 论文精读 - You Only Look Once- Unified, Real-Time Object Detection-统一的实时目标检测

Abstract 我们提出了一种新的目标检测方法- YOLO。以前的目标检测工作重复利用分类器来完成检测任务。相反,我们将目标检测框架看作回归问题,从空间上分割边界框和相关的类别概率。单个神经网络在一次评估中直接从整个图像上预测边界框和类别概率。由于…

PDF体积太大怎么缩小?这两种方法轻松解决

在我们日常处理的文件中,PDF文件的体积已经算是比较小的文件了,但是随着工作时间增加,我们用到的PDF文件也越来越多,而且有些PDF文件的内容非常丰富,文件体积变得更大,这就不利于我们将文件传输给别人&…

人脸检测算法模型MTCNN

MTCNN,Multi-task convolutional neural network(多任务卷积神经网络),将人脸区域检测与人脸关键点检测放在了一起。总体可分为P-Net、R-Net、和O-Net三层网络结构。P-Net是快速生成候选窗口,R-Net进行高精度候选窗口的过滤和选择,O-Net是生成最终边界框和人脸关键点。该…

使用JDK的 keytool 生成JKS,修改查看JKS信息

什么是keytool keytool 是个密钥和证书管理工具。它使用户能够管理自己的公钥/私钥对及相关证书,在JDK 1.4以后的版本中都包含了这一工具,所以不用再上网去找keytool的安装,电脑如果安装有JDK1.4及以上,就可以直接使用。 第一步&…

TOOM舆情分析网络舆情监控平台研究现状

随着网络舆情迅速发展,国内的舆情监测行业也日渐完善,舆情监控平台在企业发展过程中发挥重要作用,但同样也是有问题存在的,接下来TOOM舆情分析网络舆情监控平台研究现状? 一、网络舆情监控平台 网络舆情监控平台是一种能够对网…

maven概述以及简单入门

目录 1、Maven概述 1.1、Maven是什么 1.2 依赖管理 1.3 maven管理资源存放地址 1.4 Maven的作用 2.Maven基础概念 2.1仓库概念 2.坐标概念 1、Maven概述 1.1、Maven是什么 在Javaweb开发中,需要使用大量的jar包,我们手动去导入; 如何…

Mask RCNN网络源码解读(Ⅵ) --- 自定义数据集读取:MS COCOPascal VOC

目录 1.如何在Mask R-CNN中读取有关COCO数据集的内容(my_dataset_coco.py) 1.1 CocoDetection类 1.1.1 初始化方法__init__ 1.1.2 __getitem__方法 1.1.3 parse_targets 2.如何在Mask R-CNN中读取有关Pascal VOC数据集的内容(my_datas…

docker搭建 java web服务

安装 Docker 只需通过以下命令即可安装 Docker 软件: >> rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm >> yum -y install docker-io可使用以下命令,查看 Docker 是否安装成功: …

SpringMvc源码分析(一):启动tomcat服务器,加载DispatcherServlet并将DispatcherServlet纳入tomcat管理

SpringMvc是主流的MVC框架,它是基于Spring提供的web应用框架,该框架遵循servlet规范。该框架的作用是接收Servlet容器(如Tomcat)传递过来的请求并返回响应。SpringMvc的核心就是servlet实例,而这个servlet在spring中就…

IB地理科SL和HL课程的区别

今期我们会谈到IB地理科这一科目的标准级别(StandardLevel,SL)课程和高级级别(HigherLevel,HL)。 两课程的最大区别:试卷数目和题目数量的不同,但两者的教材内容和科目指引(SubjectG…

VTK-不同类型的数据集

前言:本博文主要讲解vtk中不同类型的数据集以及它们之间的关系,如何进行转换等。 目录 vtkImageData vtkRectilinearGrid vtkStructuredGrid vtkUnstructuredPoints vtkPolyData vtkUnstructuredGrid vtkPolyData->vtkImageData vtkPolyData…