HTML与cgi程序的数据交互

1. Html通过ajax获取cgi返回的数据

function HtmlGetCgiData()
{
	$.ajax({
		type: 'POST', 	//提交方法
		url: 'cgi-bin/wg67_key_in/wg67_key_in_reflush.cgi', 	//调用到的cgi程序
		data: "ajax", 	//发送的数据,不可缺失该项,不能为空(空:ajax执行失败)
		dataType: "text", 	//不可缺失
		ContentType: "application/text; charset=utf-8",  
		success: function (returnedData, status)
		{
			if(status == "success"){	//判断是否有返回值(returnedData:cgi返回值)
				alert(returnedData);
			}
			else{
				alert("刷新失败");
			}
		},
		error: function (msg)
		{
			alert("ajax执行失败");
		}
	});
}

cgi端数据返回:

cout << "I am cgicc..." << endl;
cout << "html alert show cgicc return data." << endl;

fprintf(stdout, "%s\n", "I am cgic...");
fprintf(stdout, "%s\n", "html alert show cgic return data.");

//结论:html通过ajax获得的是 cgi标准输出 的数据。

 

注意:ajax操作,依赖库:jquery

网址:jquery下载所有版本(实时更新)

<script src="SpryAssets/jquery-3.5.1.min.js"></script>

// 1)最好是下载到本地,加入到工程中,再引入到代码中
// 2)也可以使用网络url,直接引入到自己的代码中,不需要下载js文件

2. cgicc通过其库中一系列的get函数,获取html相关标签的值

此处,以 “表单form” 在执行 “submit” 时,获取表单中全部 “input 标签” 值为例。

// time_sync.cgi

void TestMode()
{
	Cgicc formData;		//加载Cgicc,获取Cgicc对象
	//获取 input标签 值
	const vector<cgicc::FormEntry>& form_entries = formData.getElements();	//getElements()函数,获取该from表单中全部 input标签
	cout << "form_entries.size()=" << form_entries.size() << endl;
	for (vector<cgicc::FormEntry>::size_type i=0; i<form_entries.size(); ++i)
	{
		const cgicc::FormEntry& form_entry = form_entries[i];
		//打印每个 input标签 中 name属性 和 value属性值
		cout << "getName=" << form_entry.getName() << "; getValue=" << form_entry.getValue() << endl;
	}
}

 html表单:

<script>
function TimeSynSubmit(obj)
{
	...
    ...
	obj.action="/cgi-bin/time_sync/time_sync.cgi?submit";
	obj.submit();
}
</script>
<form id="form2" name="form2" method="post">
	<tr>
		<td class="ys12">时间服务器IP:</td>
		<td><input name="time_server_ip" type="text" id="time_server_ip" value="" size="20" maxlength="15" /></td>
	</tr>
	<tr>
		<td class="ys12">同步周期(1-1440min):</td>
		<td><input name="time_cycle" type="text" id="time_cycle" value="" size="20" maxlength="4" /></td>
	</tr>
	<tr>
		<td>&nbsp;</td>
		<td>&nbsp;</td>
	</tr>
	<tr>
		<td><script type="text/javascript">
			document.write("<input type=\"submit\" name=\"button_submit\" id=\"button_submit\" value=\"提交\" onclick=\"return TimeSynSubmit(this.form);\" />");											
		</script></td>
	</tr>
</form>

 

 注解:

 1)cgicc的安装和使用,可以参考:Cgicc搭建交叉编译环境(移植到arm)-CSDN博客

 2)cgicc手册:参考:https://www.cnblogs.com/aquester/p/10064335.html

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

从“金事通”带给我意想不到的来说--“数据是架构的中心”

背景 上周一个保险的销售人员来找我完成一定的售后流程。其中有一项是请我下载一个叫 金事通的 APP。说实在的我根本没听过。她说这是政治任务。我想不是有你们保险公司的APP了嘛。为什么还要我安装。没办法先安装吧。 经历了注册、人脸识别的步骤后。可以登录了。注册短信发…

AR系列路由器配置本地同一网段互通

A R 路由器是华为公司推出的企业级路由器产品系列&#xff0c;具有高可靠性、高性能和易管理等特点。AR 系列路由器提供的功能包括路由转发、安全接入、语音、视频、无线等多种业务&#xff0c;支持各种接入方式和协议&#xff0c;并且可以方便地进行扩展和升级。 实验拓扑图&…

Spring:@Async注解使用注意事项及九大失效场景

前言 原文作者&#xff1a;微信公众号&#xff1a;苏三说技术 场景举例 代码案例 点击此处可观看&#xff1a;Async注解使用注意事项及九大失效场景

浪潮信息联合SAP助力玉柴集团实现数字化转型的飞跃

数字化时代下&#xff0c;企业面临着前所未有的机遇和挑战。为顺应这一趋势&#xff0c;众多企业纷纷踏上了数字化转型的征程&#xff0c;其中就包括玉柴集团。值得一提的是&#xff0c;在玉柴集团转型过程中&#xff0c;SAP、浪潮信息等国际一流厂商予以了强大的算力支持&…

SSH远程管理 远程访问及控制

SSH远程管理 SSH(Secure Shell) 是一种安全通道协议&#xff0c;主要用来实现字符界面的远程登录、远程复制等功 能。SSH 协议对通信双方的数据传输进行了加密处理&#xff0c;其中包括用户登录时输入的用户口令。与早 期的 Telent (远程登录)、RSH(Remote Shell, 远程执行命…

蓝桥青少一月 STEMA-Python 测评第一题

第一题&#xff08;难度系数 2&#xff0c;18 个计分点&#xff09; (注.input()输入函数的括号中不允许添加任何信息) 编程实现&#xff1a; 给定一个正整数 N&#xff0c;输出 N 除以 3 的商。 输入描述&#xff1a;输入一个正整数 N 输出描述&#xff1a;输出 N 除以 3 的商…

快团团新人怎么找供货团长?免费教程一学就会!

作为快团团的新手&#xff0c;想要寻找供货团长&#xff0c;可以按照以下步骤进行&#xff1a; 打开微信&#xff1a;首先&#xff0c;在您的手机上打开微信应用。 搜索快团团&#xff1a;在微信顶部的搜索框中输入“团长运营之家”&#xff0c;选择出现的“团长运营之家”公号…

纯血鸿蒙APP第三方库——MpChart运动健康场景实践案例

介绍 MpChart是一个包含各种类型图表的图表库&#xff0c;主要用于业务数据汇总&#xff0c;例如销售数据走势图&#xff0c;股价走势图等场景中使用&#xff0c;方便开发者快速实现图表UI&#xff0c;MpChart主要包括线形图、柱状图、饼状图、蜡烛图、气泡图、雷达图、瀑布图…

【JAVA进阶篇教学】第十五篇:Java中AQS讲解

博主打算从0-1讲解下java进阶篇教学&#xff0c;今天教学第十五篇&#xff1a;Java中AQS讲解。 在Java并发编程中&#xff0c;AQS&#xff08;AbstractQueuedSynchronizer&#xff09;是一个重要的框架&#xff0c;用于实现同步器和锁的基础。它提供了一种灵活的方式来实现各种…

SpringSecurity6实现动态权限,rememberMe、OAuth2.0授权登录,退出登录等功能

本文章对应视频可在B站查看SpringSecurity6对应视频教程&#xff0c;记得三连哦&#xff0c;这对我很重要呢&#xff01; 温馨提示&#xff1a;视频与文章相辅相成&#xff0c;结合学习效果更强哦&#xff01; 系列文章链接 1、初识SpringSecurity&#xff0c;认识主流Java权限…

2005-2022年各省共同富裕指数数据(含原始数据+结果)

2005-2022年各省共同富裕指数数据&#xff08;含原始数据结果&#xff09; 1、时间&#xff1a;2005-2022年 2、来源&#xff1a;统计年鉴、各省年鉴 3、范围&#xff1a;31省 4、指标&#xff1a;年份、行政区划代码、地区、人均可支配收入_元、人均消费支出_元、恩格尔系…

ASP.NET Web Api 如何使用 Swagger 管理 API

前言 Swagger 是一个开源的框架&#xff0c;支持 OpenAPI 规范&#xff0c;可以根据 API 规范自动生成美观的、易于浏览的 API 文档页面&#xff0c;包括请求参数、响应示例等信息&#xff0c;并且&#xff0c;Swagger UI 提供了一个交互式的界面&#xff0c;可以帮助我们快速…

STK12 RPO模块学习(2)

一、Coast RPO Sequence 这个序列运行卫星直到它达到了下面三个条件之一。 1&#xff09;截至时间。2)圈数到达了限制。3&#xff09;其他条件&#xff0c;比如近地点。 默认情况下&#xff0c;Astrogator使用“Earth HPOP Default v10”预报器。你能够修改呈其他修改器。下…

C++之map和set 的封装

通过红黑树的学习&#xff08;C之红黑树-CSDN博客&#xff09;让我了解到map和set的底层如何实现&#xff0c;这一次我们来对map和set进行封装。 目录 1.map和set底层原理 2.map和set的定义 3.map和set的仿函数 4.map和set的插入 5.map和set的迭代器 5.1迭代器的构造 5.2…

解决Android手机无法通过蓝牙给win10 PC传送文件

&#xff08;一&#xff09;先配对设备&#xff0c;正常配对就可以 &#xff08;二&#xff09;打开系统设置&#xff0c;win搜索窗口搜索“设置” &#xff08;三&#xff09;搜索“蓝牙” &#xff08;四&#xff09;打开“蓝牙和其他设备”&#xff0c;点击“更多蓝牙设置”…

四款不同类型的企业防泄密软件推荐

在数字化快速发展的今天&#xff0c;企业数据的安全与保密显得愈发重要。防泄密软件作为一种专门的数据保护工具&#xff0c;已经逐渐成为企业不可或缺的安全屏障。本文将深入探讨防泄密软件对企业的意义&#xff0c;并介绍一些市面上主流的防泄密软件。 首先&#xff0c;防泄密…

【MySQL复合查询】

文章目录 一、基本的使用案例二、多表查询三、自连接四、子查询4.1单行子查询4.2多行子查询in关键字all关键字any关键字 4.3多列子查询4.4 在from子句中使用子查询 解决多表问题的本质五、合并查询1.union2.union all 一、基本的使用案例 注明&#xff1a;以下案例使用的均为一…

Spring-依赖查找

依赖查找 根据名称进行查找 实时查找 BeanFactory beanFactory new ClassPathXmlApplicationContext("beans.xml"); Object bean beanFactory.getBean("personHolder"); System.out.println(bean);xml如下: <bean id"person" class&qu…

【数据可视化01】matplotlib实例介绍2

目录 一、引言二、实例介绍1.箱线图2.热力图3.线条形式 一、引言 接着上一文章【数据可视化01】matplotlib实例介绍1继续介绍matplotlib的实例。 二、实例介绍 在matplotlib中&#xff0c;常用的图形类型包括&#xff1a; 箱线图&#xff08;Box plot&#xff09;&#xff1…

非预警,这3本TOP期刊,为何走到On Hold这步?

本周投稿推荐 SSCI • 2区社科类&#xff0c;3.0-4.0&#xff08;社科均可&#xff09; EI • 计算机工程类&#xff08;接收广&#xff0c;录用极快&#xff09; SCI&EI • 4区生物医学类&#xff0c;1.5-2.0&#xff08;录用率99%&#xff09; • 1区工程类&#…