webservice为什么不直接传参数,还非要通过xml

比如调远程的方法method(String str)为什么不是直接把str这个参数传过来,非要组成xml传过来,组的xml :<?xml version='1.0' encoding='utf-8'?> <str>1004</str>
最新回答
浅笑等壹个晴天

2024-09-21 11:37:10

  1. XML叫可扩展标记语言,是一种用于标记电子文件使其具有结构性的标记语言,设计宗旨是传输数据;

  2. Web Service的软件和平台有很多种,想直接调用函数一样的传参是不现实,也很操作的,而对于计算机各种语言的运行平台,封装和安全考虑,是无法直接访问到应用内部方法的,尤其是跨平台的应用访问。 Web Service一般通过SOAP结合HTTP、SMTP、MIME等协议,将消息数据XML化进行网络传递,接收的计算机也按相应协议进行拆析成数据,才能传递给相关应用;

  3. 总之,XML主要用于不同语言和系统之间的数据传输,而传输和交换数据需要一定的规范,才能够交流。

为你唱起小乌龟

2024-09-21 08:37:58

关于这个问题其实,首先你要了解xml ,是什么。其实xml文件本质上来说也是大段字符串,只不过它是一种标签化的存储方式。跟它类似的比如json 都是一样的,本质上都是字符串。只不过这个特殊的字符串有自己组织的方式,通过解析可以还原成数据。

那么,下一个问题就是为什么要使用xml而不是直接传字符串呢?
当传字符串,数据的可读性会非常差,而且功能单一。比如说一个数组,一个list,你用http传值的时候要怎么写呢?

另外,xml标签有很多规则,规范,其实写的都是一个事,就是怎么组织你要传输的数据。其功能跟类的串行化很向。 类的串行化就是把堆和栈中的实体数据转化成序列化的数据(可以理解成字符串)。而我们在写xml的时候,就是把我们想要的实体化数据组织成xml的形式,然后程序读取xml再还原成 实体化数据。

额,说的比较多,都是我的一些理解。
纞嗳の方程鉽

2024-09-21 03:07:05

WEBSERVICE只能传输序列化数据,而且考虑到跨平台应用,所以xml是首选。
放逐°

2024-09-21 01:48:56

这是规范,也可以用json或是其他的
菊花碎大石

2024-09-21 03:23:23

xml是大多数网络传参的格式.