为什么我所打印出来的soap->version值为0,soap->version的值,在哪里开始产生soap->version的

Workholic_365 2015-11-24 02:17:10
最近在做基于gsoap开源的onvif协议的开发,目前在做服务端的开发,遇到了种种问题

目前最大的疑惑是为什么我所打印出来的soap->version值为0,而soapH.h中规定的soap->version值为1和2 ,即SOAP1.1版本和SOAP1.2版本,后续的解析都是基于不同版本的命名空间去进行解析的,不知谁可以帮忙解答下这个疑惑?当然我更想知道,soap->version的值,一开始是在哪里体现的,或者说是在哪里开始产生soap->version的。

我是基于TI的开发板进行移植的,现在使用onvif 测试工具并使用Wireshark进行抓包,使用Discover Device时,Probe的报文与TI的一直,但是ProbeMatch的报文出错,跟踪代码,现在是在soap_serve_request()函数中出错,现在打印出来的soap->error除了是上面版本错误(soap->error=39,对比soapH.h发现#define SOAP_VERSIONMISMATCH 39);其他的soap->error的值为3(SOAP_TAG_MISMATCH)、6(SOAP_NO_TAG)、13(SOAP_NO_METHOD),其中报SOAP_NO_METHOD为主要的错误,请问有哪些问题可能会导致这些错误,网上的帖子大多数都看过了,但没找到实质性的见解,望有做过此方面开发的大侠给予解答,

当然在开发onvif协议的过程中还有很多疑惑,后续可能还会上贴
...全文
102 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

23,118

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧