当前博客:08、HTTP服务之与前端进行ajax交互

380 次浏览【转载需注明来源】

博客作者:【快码FOF编程】

个性签名:寒窗苦读十年一朝凤舞九天

在项目开发中,极大部分时候我们需要非表单交互模式;也就是不通过表单与服务器产生交互效果。

因为表单的交互势必会导致页面出现跳转,而一些功能通常是不需要进行交互后跳转的;这样的需求就可以通过前端的ajax来实现,而ajax在快码编程中也经过了高度的包装,一段前端与后端进行不跳转ajax交互的代码如下:

<!文档类型 网页类型>
<网页 语言代码="中文">
	<网页头部>
		<网页信息 文档编码="UTF8" />
		<网页信息 名称="页面视图" 关联数据="视图宽度=填充视图宽度,初始缩放值=1,最大缩放值=1,用户缩放状态=假" />
		<网页信息 关联HTTP="兼容模式" 关联数据="最高IE版本" />
		<网页标题>Document</网页标题>
	</网页头部>
	<网页主体>
		<按钮 类名="lay-按钮 lay-按钮-百搭" 点击回调="GETAJAX交互()">点我进行GET的AJAX交互</按钮>
		<按钮 类名="lay-按钮 lay-按钮-百搭" 点击回调="PostAJAX交互()">点我进行POST的AJAX交互</按钮>
		<脚本>
			定义函数 GETAJAX交互(参数) {
				局部变量 返回结果 = 网页访问_同步("/Getxxxx", 假);
				调试输出(返回结果);
			}
			定义函数 PostAJAX交互(参数) {
				局部变量 返回结果 = 网页访问_同步("/Postxxxx", 真, "账号=123&密码=234");
				调试输出(返回结果);
			}
		</脚本>
	</网页主体>
</网页>

知识点:上方分别展示了GET和POST的ajax交互,所采用的是网页访问_同步这个命令,这个命令内部包装的就是同步的AJAX网页请求。

知识点:使用AJAX方式与后端交互网页不会跳转,便于持续性的在网页中做一些操作。

知识点:使用网页访问_同步命令需要引用JQ支持库

知识点:上方的代码使用了LAYUI的按钮,所以还需要引用LAYUI支持库

后端的HTTP服务代码如下:

HTTP服务类.启动服务(
	{ "端口": 8081, "域名": "0.0.0.0", "首页文件": "@名称_表单页面.lhtml", 上传大小限制: 1024 * 1024 * 1 },
	(反馈信息) => {
		调试输出(反馈信息);
	},
	(访问信息, 整体信息) => {
		调试输出(访问信息);
		如果 (访问信息["链接地址"]=="/Getxxxx") {
		    返回 { "发送数据": JSON类.到可读JSON文本({"数据":"你好客户端"}), "数据协议": HTTP服务类.获取数据协议("json") };
		}
		返回 { "发送数据": 访问信息["文件数据"]["文件数据"], "数据协议": HTTP服务类.获取数据协议(访问信息["请求类型"]) };
	},
	(访问信息, 整体信息) => {
		调试输出(访问信息);
		如果 (访问信息["链接地址"]=="/Postxxxx") {
		    返回 { "发送数据": JSON类.到可读JSON文本({"数据":"你好客户端"}), "数据协议": HTTP服务类.获取数据协议("json") };
		}
		返回 { "发送数据": "你好,世界", "数据协议": HTTP服务类.获取数据协议("html") };
	}
);

知识点:在AJAX的交互中,一般返回值都以JSON格式进行返回

知识点:在上面的HTTP服务代码中,判断了是不是客户端的请求;如果是则返回了一个对象格式的数据,这个对象的数据被转换成了JSON的文本格式

知识点:要发送JSON类型的数据则返回的数据协议需要是:json

 

本博客案例下载:案例下载

默认排序
Generic placeholder image
Generic placeholder image
快码FOF编程 Time: 2023-05-18 14:49:34

该篇博客很多同学都在等待,现在出来了


08、HTTP服务之与前端进行ajax交互