嵌入式Web Service gSOAP的移植与应用(二)

简介:
WebService gSOAP实验
一.实验目的
了解gSOAP WebServer的使用方法并完成相关实验
二.基础知识
(1)        C语言基础知识
(2)        掌握Linux环境下vi编译器的使用方法
(3)        掌握Makefile的编写和使用方法
(4)        掌握Linux下的程序与交叉编译过程
三.实验环境
为了完成本实验,以下硬件条件是必须的:
UP-NETARM2410-S嵌入式实验平台
PCPentium500以上,硬盘40GB以上,内存128MB以上
为了完成本实验,以下软件条件是必须的:
PC机操作系统RedHat Linux 9.0
ARM-Linux_2.7.9e.tar.gz压缩包。
四.情景描述
下载gsoap_linux_2.7.9e.tar.gz压缩包并且解压,之后完成calc.hMakefilecalcserver.ccalcclient.c程序并且编译,最后在开发平台上进行测试
五.完成实验所需时间:约60分钟
六.实验内容:
1.   新建一个目录,将这个实验所需要用到的压缩包复制到该目录中并解压
从网站下载压缩包gsoap_linux_2.7.9e.tar.gzCSDN网站有下载,并且准备压缩
[root@localhost arm2410cl]# ls
//查看目录下的文件
[root@localhost arm2410cl]# tar -zxvf gsoap_linux_2.7.9e.tar.gz
//解压gsoap_linux_2.7.9e.tar.gz压缩包
解压缩后的文件夹是gsoap-linux-2.7,之后进入该文件夹下的samples/calc/
1.  修改calcclient.c文件
进入calcclient.c文件,然后将如下内容:
[root@localhost arm2410cl]# cd gsoap-linux-2.7/samples/calc/
进入calcclient.c文件,然后将如下内容:
[root@localhost calc]# vi calcclient.c
//编辑calcclient.c文件
将下面内容:
const char server[] = "http://websrv.cs.fsu.edu/~engelen/calcserver.cgi";
修改成为:
const char server[] = http://localhost:8080;
[root@localhost calc]# make
//make编译原文件
[root@localhost calc]# ls
//显示所有文件
[root@localhost calc]# ./calcserver 8080
//calc目录下执行如下命令,其中8080是端口号,其中下面信息说明calcserver程序已经在后台执行。
Socket connection successful: master socket = 3
Socket connection successful: slave socket = 4
打开浏览器,输入如下地址:http://localhost:8080,此时浏览器出现下面这个界面说明calcserver程序运行没有问题。
[root@localhost calc]# ./calcclient add 7 8
linux打开另个终端,执行命令测试7+8=15结果是正确的。
result = 15
[root@localhost calc]# ./calcclient mul 3 4
//在执行命令测试3*4=12结果也是正确的,每执行依次命令就在calcserver服务端返回连接成功的信息。
result = 12
[root@localhost arm2410cl]# cd gsoap-linux-2.7/samples/calc/
//删除原来解压目录,测试在arm平台下运行程序前面的步骤是一样的
[root@localhost calc]# ls
//显示/arm2410cl/gsoap-linux-2.7/samples/calc/目录下的文件
calcclient.c  calc.h  calcserver.c  Makefile
[root@localhost calc]# vi Makefile
//编辑Makefile文件
calcserver:     calc.h calcserver.c $(SOAPH) $(SOAPC)
                $(GSOAP) -c calc.h
                armv4l-unknown-linux-gcc $(CFLAGS) -o calcserver calcserver.c soapC.c soapServer.c $(SOAPC) -lm $(LIBS)
//calcserver:中的$(CC)改为armv4l-unknown-linux-gcc编译器
[root@localhost calc]# vi calcclient.c
//编辑calc客户端文件,为了能看出效果可以用目录标板的IP地址代替localhost,端口号是一样的。将下面的内容:
const char server[] = "http://websrv.cs.fsu.edu/~engelen/calcserver.cgi";
修改成:
const char server[] = http://10.88.221.61:8080;
[root@localhost calc]# make
//编译原程序代码,在编译的时候会显示一些关于限制范围的一些警告信息,但不会影响运行结果。
[/mnt/yaffs]mount -t nfs 10.88.221.60:/arm2410cl /mnt/nfs
//挂载linux/arm2410cl的目录到目标板上的/mnt/nfs挂载点上。
[/mnt/yaffs]cd /mnt/nfs
//切换到/mnt/nfs目录中
[/mnt/nfs]ls
//可以看到是挂载成功的
gsoap-linux-2.7            gsoap_linux_2.7.9e.tar.gz
[/mnt/nfs]cd gsoap-linux-2.7/samples/calc/
//切换到calc目录下的
[/mnt/nfs/gsoap-linux-2.7/samples/calc]ls
//显示目录下的文件
 [/mnt/nfs/gsoap-linux-2.7/samples/calc]./calcserver 8080
//执行calc服务器的执行文件加端口号8080,见到下面信息说明是成功的
Socket connection successful: master socket = 3
Socket connection successful: slave socket = 4
Socket connection successful: slave socket = 4
linux 打开浏览器,在地址栏输入:http://10.88.221.61:8080/ ,显示下面界面,同时也会在目标板显示一个从slave socket接口号4连接成功的信息。
[root@localhost calc]# ./calcclient mul 3 4
//linux界面下运行calc客户端执行程序,执行命令3*4=12,如果结果返回12说明测试成功,同时在目标板上也会看到返回辅助接口的连接成功信息。
 
 









本文转自 chen138 51CTO博客,原文链接:http://blog.51cto.com/chenboqiang/302882,如需转载请自行联系原作者
目录
相关文章
|
10天前
|
前端开发 JavaScript 关系型数据库
从前端到后端:构建现代化Web应用的技术探索
在当今互联网时代,Web应用的开发已成为了各行各业不可或缺的一部分。从前端到后端,这篇文章将带你深入探索如何构建现代化的Web应用。我们将介绍多种技术,包括前端开发、后端开发以及各种编程语言(如Java、Python、C、PHP、Go)和数据库,帮助你了解如何利用这些技术构建出高效、安全和可扩展的Web应用。
|
25天前
|
监控 Serverless 测试技术
Serverless 应用引擎常见问题之做的web服务计费如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
329 3
|
1月前
|
前端开发 数据库 UED
构建高性能Web应用的关键技术
本文将介绍构建高性能Web应用的关键技术,包括前端优化、后端优化、数据库优化等方面。通过深入讨论各项技术的原理和实践方法,帮助开发者们提升Web应用的响应速度和用户体验。
|
3天前
|
缓存 负载均衡 数据库
优化后端性能:提升Web应用响应速度的关键策略
在当今数字化时代,Web应用的性能对于用户体验至关重要。本文探讨了如何通过优化后端架构和技术手段,提升Web应用的响应速度。从数据库优化、缓存机制到异步处理等多个方面进行了深入分析,并提出了一系列实用的优化策略,以帮助开发者更好地应对日益增长的用户访问量和复杂的业务需求。
9 1
|
3天前
|
缓存 监控 数据库
Flask性能优化:打造高性能Web应用
【4月更文挑战第16天】本文介绍了提升Flask应用性能的七大策略:优化代码逻辑,减少数据库查询,使用WSGI服务器(如Gunicorn、uWSGI),启用缓存(如Flask-Caching),优化数据库操作,采用异步处理与并发(如Celery、Sanic),以及持续监控与调优。通过这些手段,开发者能有效优化Flask应用,适应大型或高并发场景,打造高性能的Web服务。
|
4天前
|
数据库 开发者 Python
Python中使用Flask构建简单Web应用的例子
【4月更文挑战第15天】Flask是一个轻量级的Python Web框架,它允许开发者快速搭建Web应用,同时保持代码的简洁和清晰。下面,我们将通过一个简单的例子来展示如何在Python中使用Flask创建一个基本的Web应用。
|
8天前
|
JavaScript 前端开发 API
Vue.js:构建高效且灵活的Web应用的利器
Vue.js:构建高效且灵活的Web应用的利器
|
16天前
|
XML JSON JavaScript
使用JSON和XML:数据交换格式在Java Web开发中的应用
【4月更文挑战第3天】本文比较了JSON和XML在Java Web开发中的应用。JSON是一种轻量级、易读的数据交换格式,适合快速解析和节省空间,常用于API和Web服务。XML则提供更强的灵活性和数据描述能力,适合复杂数据结构。Java有Jackson和Gson等库处理JSON,JAXB和DOM/SAX处理XML。选择格式需根据应用场景和需求。
|
30天前
|
前端开发 JavaScript 安全
深入探索 Qt6 web模块 WebEngineCore:从基础原理到高级应用与技巧
深入探索 Qt6 web模块 WebEngineCore:从基础原理到高级应用与技巧
71 0
|
1月前
|
缓存 监控 应用服务中间件
如何使用负载均衡器提升Python Web应用的性能?
【2月更文挑战第27天】【2月更文挑战第94篇】如何使用负载均衡器提升Python Web应用的性能?