|
|
导航: |
论坛 -> DELPHI技术
斑竹:liumazi,sephil |
|
作者: |
|
2009/6/4 1:43:47 |
标题: |
WebService 开发问题,通用调用程序思路 |
浏览:2873 |
|
加入我的收藏 |
楼主: |
我在JAVA 下看到有个工具,可以利用 WebService WSDL 地址得到 方法的名称与参数,返回的参数等,然后画到树中,选择树中 的方法,填写对应的参数值,点执行就可以直接执行选中的方法了。
现在的问题是,如果不直接根据 WebService WSDL 地址 生成 PAS 接口单元,怎么能在调用的时候调用对应的方法呢
----------------------------------------------
delphi 千人QQ群 195216132delphi源码大全 http://item.taobao.com/item.htm?id=19273117049 Android源码大全 http://item.taobao.com/item.htm?id=21572699108 IOS源码大全 http://item.taobao.com/item.htm?id=21562383934 VC源码大全 |
作者: |
|
2009/6/4 14:33:19 |
1楼: |
也就是 编写的用DELPHI能够连接到任意一个 WebService 上,其他的都是程序自己完成了,比如,自己获取方法,接口,参数等
记得DELPHI 的 程序以前是有一个,现在我找不到了
----------------------------------------------
delphi 千人QQ群 195216132delphi源码大全 http://item.taobao.com/item.htm?id=19273117049 Android源码大全 http://item.taobao.com/item.htm?id=21572699108 IOS源码大全 http://item.taobao.com/item.htm?id=21562383934 VC源码大全
|
作者: |
lsuper (lsuper) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2009/6/4 17:12:30 |
2楼: |
wsdl import 啊,delphi 的源码里甚至于包括这个 exe 的源码
----------------------------------------------
-
|
作者: |
|
2009/6/4 17:30:46 |
3楼: |
wsdl import 啊,delphi 的源码里甚至于包括这个 exe 的源码
不要手动 import 生成 PAS,这个是使用程序实现的,也就是说不生成接口PAS 的情况下如何做
----------------------------------------------
delphi 千人QQ群 195216132delphi源码大全 http://item.taobao.com/item.htm?id=19273117049 Android源码大全 http://item.taobao.com/item.htm?id=21572699108 IOS源码大全 http://item.taobao.com/item.htm?id=21562383934 VC源码大全
|
作者: |
|
2009/6/4 19:01:53 |
4楼: |
用SoapToolkit
----------------------------------------------
Rarnu / CnPack Developer 联系方式GTalk: rarnu1985@gmail.com
|
作者: |
|
2009/6/4 19:08:09 |
5楼: |
procedure TForm1.FormCreate(Sender: TObject); var ServiceSoap: OleVariant; Hello: string; Sum: Integer; begin ServiceSoap := CreateOleObject('MSSOAP.SoapClient30'); ServiceSoap.MSSoapInit(WSDLAddress); Hello := ServiceSoap.HelloWorld; ShowMessage(Hello); Sum := ServiceSoap.Add(1,2); ShowMessage(IntToStr(Sum)); ServiceSoap := Unassigned; end;
----------------------------------------------
Rarnu / CnPack Developer 联系方式GTalk: rarnu1985@gmail.com
|
作者: |
|
2009/6/5 2:32:11 |
6楼: |
SoapToolkit 不是个好办法,还需要额外的安装
李维 的 D6.SOAP_WEB.SERVICE.Program 上面的第13章有介绍好像讲了部分,但是还不是很清楚,我也见过DELPHI版开发的程序,电脑里有,但是找不到了
----------------------------------------------
delphi 千人QQ群 195216132delphi源码大全 http://item.taobao.com/item.htm?id=19273117049 Android源码大全 http://item.taobao.com/item.htm?id=21572699108 IOS源码大全 http://item.taobao.com/item.htm?id=21562383934 VC源码大全
|
作者: |
james_ (james_) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2009/6/5 12:18:54 |
7楼: |
look look
----------------------------------------------
-
|
作者: |
|
2009/6/5 13:17:32 |
8楼: |
好像目前还看到这种控件,因为不太需要. 如果对soap协议了解得足够多, 应该可以手工构造出数据包来调用的. 控件也是人写的, 期待楼主的作品.
----------------------------------------------
-
|
作者: |
|
2018/6/28 10:21:52 |
9楼: |
期待不用import的方法
----------------------------------------------
青云论坛
|
作者: |
|
2018/6/28 11:59:52 |
10楼: |
直接post
----------------------------------------------
-
|
作者: |
lsuper (lsuper) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2018/6/29 0:28:22 |
11楼: |
抓个正常通信的包自己 xml+httpsend 捏 ~
----------------------------------------------
-
|
作者: |
msl6 (宝宝) |
▲▲▲△△ |
-
|
普通会员 |
|
2018/6/29 14:26:14 |
12楼: |
我也想要这样的处理WebService方式,对接多了,经常要添加代码
----------------------------------------------
成功源于专注
|
作者: |
msl6 (宝宝) |
▲▲▲△△ |
-
|
普通会员 |
|
2018/6/29 14:28:40 |
13楼: |
我看到别人HIS jave写的 有这样的实现过,他们调用我们的WebService. 只要我们给WSDL + 方法名,他们把这个要系统里面注册一下(咋处理,不懂),要就正常调用WebService
----------------------------------------------
成功源于专注
|
作者: |
|
2018/6/29 14:53:52 |
14楼: |
楼上已经有人回复了,直接post即可,webservice不过是经过soap协议封装而已,报文内容不同
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:urn="urn:命名空间"> <soap:Header/> <soap:Body> <urn:方法名> <arg0></arg0> <arg1><![CDATA[ XXXXXXXXXX ]]></arg1> </urn:HIPMessageServer> </soap:Body> </soap:Envelope>
POST的时候,关注方法名和参数即可,也就是 soap:Body 中的内容,soap协议只认参数个数,直接组接好 soap:Body 即可
有问题欢迎指正讨论
----------------------------------------------
-
|
作者: |
|
2018/7/14 23:12:01 |
15楼: |
WebService 在 delphi 上的实现,是 Delphi 帮你把基于 HTTP 的对 XML 的字符串内容的收发,直接转换成了对函数的调用。JAVA 也是这样做的。这个就是传说的 RPC,只是通讯层用了 XML 来作为数据的格式,然后通讯协议采用 http。当然,对于 SOAP 来说,通讯协议不一定非要 http,只是 WebService 既然是 WEB,当然是 http.
楼上有人说自己解析 XML,如果这样做,当然没问题。就是做起来比较麻烦。而 Delphi 的 WebService 的函数调用,就是帮你把 XML 的解析做了。
楼主的问题我看得不是很明白。我猜楼主的意思不是如何在 Delphi 底下调用 JAVA 写的 WebService,而是如何用 Delphi 写的程序在运行期调用一个事先不知道的 WebService。
如果有一个 Java 写的 WebService,然后,我要用 Delphi 写个程序去调用,这个简单,设计期,用 Delphi 提供的 WSDL importer 这个工具去访问那个 Java 的 WebService 提供的 URL,Delphi 就能帮你创建 DELPHI 的代码能用的这个 WebService 的调用接口代码。剩下的问题就自己去写客户端代码了。
如果设计期没有针对这个 WebService 生成对应的 Delphi 代码并编译到你的程序里,你的程序在事先不知道这个 WebService 的情况下,运行期想要去调用这个 WebService 提供的服务,Delphi 不支持。
可能有第三方控件支持吧?
----------------------------------------------
-
|
|