关于web service中参数传递与解析的问题

liuying2500 2009-03-25 11:27:42
我想完成以下功能:
1.将client端的数据封装成一个有结构组织的类似于容器的东西,并且调用web service,将这个容器作为参数传递过去。
2.web service端只暴露出一个接口,供client端调用。我想将web service做成一个分派请求的控制器,首先解析client端传递过来的容器,然后根据解析结果由web service控制返回哪个业务逻辑方法的实例给client端。
问题:
类似于容器的东西应该如何实现,以及容器的解析,做法希望可以灵活一点。

请大家多发表一下意见,一起讨论讨论,谢谢。
...全文
234 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
peijihui 2009-04-02
  • 打赏
  • 举报
回复
1、你说的这个容器必须由WebService来定义,client不能定义(否则client不就成service了?)
2、由Webservice定义结构,也就是你说的容器,然后翻译到客户端(在client添加Web引用),能够将这个结构翻译到客户端,并将你定义的这个结构翻译成客户端可以识别的结构。
3、你说的容器,其实就是一个类定义
liuying2500 2009-04-01
  • 打赏
  • 举报
回复
继续up
liuying2500 2009-03-31
  • 打赏
  • 举报
回复
up
liuying2500 2009-03-29
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 stonehy520 的回复:]
XML,DataSet
其实Web Service最后还是把DataSet解析成XML处理的
[/Quote]

这位兄弟可以再稍微说详细一点吗?
我感觉这么做会产生很多用过一次就没用了的XML文件,该怎么处理呢?写个程序每天删除一次?
再说把每次client端的请求封装成xml文件,再在server端解析,这样效率会不会晓得低了一点呢?
如果要用xml传递复杂参数为什么不直接截取client端的soap呢?
我对web server是初学者,说的不对的地方请大家多多指正.
sandy520 2009-03-28
  • 打赏
  • 举报
回复
可以通过服务器端暴露出需要调用的方法的接口,然后客户端通过调用接口,传递的参数可以通过传递XML格式的文件,
只是要定义一个XML格式的标准,在服务器端通过解析XML文件得到参数再进行操作,返回的结果如果是比较复杂的数据,
也可以返回一个定义好的XML文件,这样方便多了,并且传输的XML文件数据比较安全。
stonehy520 2009-03-28
  • 打赏
  • 举报
回复
XML,DataSet
其实Web Service最后还是把DataSet解析成XML处理的
Dobzhansky 2009-03-27
  • 打赏
  • 举报
回复
用的到的数据, 无论以何种形式, 该发送的还是要发送的, 合理设计, 尽量减少几乎次数, 以及降低每次的数据通讯量才是正道, 也可以压缩一下再发送, 不过对于繁忙的服务器, 设计时考虑到要服务器众多客户端, 做一些数据缓存, 数据 hit 的薄计工作, 是有好处的.

另外, 客户端之间设计一些相互协作机制, 也不错, 有些数据是没有必要每次都到服务器去获取的.
liuying2500 2009-03-27
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 Dobzhansky 的回复:]
微软有个例子, 用的是 socket 建立的服务器/客户端 架构,
通讯用的就是 xml, 称为消息, xml 中有对动作的描述, 服务器返回的也是这样的xml

这样的好处是 服务器/客户端的函数调用接口不至于膨胀,
不过xml消息类型的定义要费些功夫了,

举个例子, 下面是一个聊天的 xml 消息:

XML code
<?xml version="1.0" encoding="utf-8" ?>
<MediaShare>
<Message Type="ChatMessage">
<Id>Guid</Id>

[/Quote]
那就是说我得把客户端的每次请求都封装成xml文件,那xml文件的数据量难道不会爆增吗?还是我理解的有问题呢?
还请您多多赐教!谢谢
YSEE 2009-03-27
  • 打赏
  • 举报
回复
接分
liuying2500 2009-03-27
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 Dobzhansky 的回复:]
用的到的数据, 无论以何种形式, 该发送的还是要发送的, 合理设计, 尽量减少几乎次数, 以及降低每次的数据通讯量才是正道, 也可以压缩一下再发送, 不过对于繁忙的服务器, 设计时考虑到要服务器众多客户端, 做一些数据缓存, 数据 hit 的薄计工作, 是有好处的.

另外, 客户端之间设计一些相互协作机制, 也不错, 有些数据是没有必要每次都到服务器去获取的.
[/Quote]

您说的这个数据缓存给了我很大启发,非常感谢
Dobzhansky 2009-03-26
  • 打赏
  • 举报
回复
微软有个例子, 用的是 socket 建立的服务器/客户端 架构,
通讯用的就是 xml, 称为消息, xml 中有对动作的描述, 服务器返回的也是这样的xml

这样的好处是 服务器/客户端的函数调用接口不至于膨胀,
不过xml消息类型的定义要费些功夫了,

举个例子, 下面是一个聊天的 xml 消息:

<?xml version="1.0" encoding="utf-8" ?>
<MediaShare>
<Message Type="ChatMessage">
<Id>Guid</Id>
<MessageData>String</MessageData>
<SenderId>Guid</SenderId>
</Message>
</MediaShare>


微软的那个例子叫 MediaShare, 是一个 c++/cli starter kit,
感兴趣的可以找来学习一下.
liuying2500 2009-03-26
  • 打赏
  • 举报
回复
UP
libo_java 2009-03-25
  • 打赏
  • 举报
回复
hao !
liuying2500 2009-03-25
  • 打赏
  • 举报
回复
我公司用不了qq,直接在这上说吧
z-sen 2009-03-25
  • 打赏
  • 举报
回复
我也正为这个发愁了,我现在要做的BS和cs混合模式的。跟你差不多,交流下好不!!!
QQ:59169950
liuying2500 2009-03-25
  • 打赏
  • 举报
回复
补充一下,代码实现最好是c#
liuying2500 2009-03-25
  • 打赏
  • 举报
回复
你的意思是我要给每个client端的请求都封装成xml文件再传吗?这样做会不会产生很多xml文件呢?
wuyq11 2009-03-25
  • 打赏
  • 举报
回复
通过web service 传递XML
http://www.cnblogs.com/zsww/archive/2004/06/15/15894.aspx

12,162

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 Web Services
社区管理员
  • Web Services社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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