WebService gSOAP实验
一.实验目的
了解gSOAP WebServer的使用方法并完成相关实验
二.基础知识
(1)       C语言基础知识
(2)       掌握Linux环境下vi编译器的使用方法
(3)       掌握Makefile的编写和使用方法
(4)       掌握Linux下的程序与交叉编译过程
三.实验环境
为了完成本实验,以下硬件条件是必须的:
UP-NETARM2410-S嵌入式实验平台
PC机Pentium500以上,硬盘40GB以上,内存128MB以上
为了完成本实验,以下软件条件是必须的:
PC机操作系统RedHat Linux 9.0
ARM-Linux_2.7.9e.tar.gz压缩包。
四.情景描述
下载gsoap_linux_2.7.9e.tar.gz压缩包并且解压,之后完成calc.h、Makefile、calcserver.c和calcclient.c程序并且编译,最后在开发平台上进行测试
五.完成实验所需时间:约60分钟
六.实验内容:
1.  新建一个目录,将这个实验所需要用到的压缩包复制到该目录中并解压
从网站下载压缩包gsoap_linux_2.7.9e.tar.gz,CSDN网站有下载,并且准备压缩
[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,如需转载请自行联系原作者

嵌入式Web Service gSOAP的移植与应用(二)相关推荐

  1. 嵌入式Web开发——Boa服务器移植

    百度百科上关于 Boa 的说明: BOA 服务器是一个小巧高效的 web 服务器,是一个运行于 unix 或 linux 下的,支持 CGI 的.适合于嵌入式系统的单任务的http服务器. 源代码开放 ...

  2. 常见嵌入式WEB服务器

    常见嵌入式WEB服务器 最近在搞一款应用到嵌入式WEB的产品,早期常为搭建服务器头疼,故在此列出几款常用的.不过我公司现在使用的goahead,下载见www.goahead.com 2.5.1版本.下 ...

  3. Web Service 开发工具 gSOAP 简介

    目录 一 服务器端 二 对应的客户端 三 遇到的问题 gSOAP是一个夸平台的,用于开发Web Service服务端和客户端的工具,在Windows.Linux.MAC OS和UNIX下使用C和C++ ...

  4. Linux下用gSOAP开发Web Service服务端和客户端程序(一)

    1.功能说明: 要开发的Web Service功能非常简单,就是一个add函数,将两个参数相加,返回其和. 2.C版本的程序: (1)头文件:SmsWBS.h,注释部分不可少,url部分的IP必须填写 ...

  5. 三种嵌入式web服务器(Boa / lighttpd / shttpd)的 linux移植笔记

    一:移植Boa(web服务器)到嵌入式Linux系统 一.Boa程序的移植 1.下载Boa源码     下载地址: http://www.boa.org/     目前最新发行版本: 0.94.13  ...

  6. 用gSOAP开发Web Service程序

    2019独角兽企业重金招聘Python工程师标准>>> gSOAP是一个绑定SOAP/XML到C/C++语言的工具,使用它可以简单快速地开发出SOAP/XML的服务器端和客户端.由于 ...

  7. gsoap 实现 C/C++ 调用web service

    gSOAP 是什么? gSOAP编译工具提供了一个SOAP/XML 关于C/C++ 语言的实现,从而让C/C++语言开发web服务或客户端程序的工作变得轻松了很多.绝大多数的C++web服务工具包提供 ...

  8. goaheadlinux移植_goahead(嵌入式Web服务器)之交叉编译、移植篇

    GoAhead简介: GoAhead是一个开源(商业许可).简单.轻巧.功能强大.可以在多个平台运行的嵌入式Web Server. GoAhead主要特性: 1 很小的内存消耗 2 支持认证功能Dig ...

  9. goahead(嵌入式Web服务器)之交叉编译、移植篇

    GoAhead简介: GoAhead是一个开源(商业许可).简单.轻巧.功能强大.可以在多个平台运行的嵌入式Web Server. GoAhead主要特性: 1 很小的内存消耗 2 支持认证功能Dig ...

最新文章

  1. Android onAttach 的使用
  2. 手机验证短信设计与代码实现(转载)
  3. Android Studio 小技巧/快捷键 合集
  4. How is an SAP OData Batch request handled in the backend
  5. mysql的事务语句_MySQL提供的事务控制语句
  6. python计算AA制时砍价后大家需要分摊的钱
  7. *1LL在c++中的意义
  8. Java三种连接池(druid、c3p0、dbcp)
  9. 黑客入门,从HTB开始
  10. 这款优秀的检验工具SolidWorks Inspection你用过吗?
  11. Ubuntu的各种软件下载和安装命令
  12. map集合用于存储信息(映射关系)
  13. Oracle默认数据库角色账号密码
  14. 什么是天气预报 API 接口?如何获取天气预报 API?
  15. 臻图信息构建数字孪生港口船舶停靠管理系统,赋能港口创新发展
  16. 2022-02-16 工作记录--Swiper-实现跑马灯效果:鼠标经过时停止滑动,鼠标离开后继续滑动
  17. 模电——磁珠的前世今生
  18. BOSS 业务运营支撑系统
  19. 服务器 无线 有线,【干货】有线无线一体化移动网
  20. ffmpeg源码简析(九)av_log(),AVClass,AVOption

热门文章

  1. boost::geometry::clear用法的测试程序
  2. Boost:双图bimap与property地图的测试程序
  3. ITK:遍历图像的线
  4. ITK:在图像中找到最大和最小
  5. OpenCV提炼角点位置的实例(附完整代码)
  6. QT的QDtlsClientVerifier类的使用
  7. 经典C语言程序100例之十二
  8. java 连接池技术_java数据库连接池技术原理(浅析)
  9. java和python哪个编程好找工作_学编程选Python还是Java?就业发展哪个好??
  10. php 函数传值_传址_函数参数,php函数的传值与传址(引用)详解_PHP教程