在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
网上翻一下,东拼西凑的找到方法
if HTTPRIO = nil then
RIO := THTTPRIO.Create(nil) else RIO := HTTPRIO; //add-------to support UTF-8 RIO.HTTPWebNode.UseUTF8InHeader := true; //添加该行,指定采用UTF-8代码传输 RIO.Converter.Encoding:='UTF-8'; RIO.Converter.Options:=RIO.Converter.Options + [soUTF8InHeader,soUTF8EncodeXML]; //add-------END 4,还是这个文件 ,在结束之前加入
initialization
InvRegistry.RegisterInterface(TypeInfo(StatisticsSoap), 'http://www.??????.net/webservice', 'utf-8'); InvRegistry.RegisterDefaultSOAPAction(TypeInfo(StatisticsSoap), 'http://www.??????.net/webservice/%operationName%'); //add---------to support new document type InvRegistry.RegisterInvokeOptions(TypeInfo(StatisticsSoap), ioDocument); //add---------END end. 5,然后 就可以调用它们了,要注意一点,不能通过WSDLLocation来设置地址,因为delphi的封装存在问题,不能识别.net2.0的一些新节点。 方法一:
var
mHttpRIO: THTTPRIO; mServiceSoap: statisticsSoap; begin mHttpRIO := THTTPRIO.Create(nil); try mHttpRIO.HTTPWebNode.UseUTF8InHeader :=True; mHttpRIO.Converter.Options :=mHttpRIO.Converter.Options + [soUTF8InHeader,soUTF8EncodeXML]; mHttpRIO.URL := 'http://www.??????.net/webservice/statistics.asmx'; //mHttpRIO.URL := 'http://localhost:3589/Statistics.asmx'; //only for test mServiceSoap := mHttpRIO as statisticsSoap; 方法二:
var
mServiceSoap:StatisticsSoap; begin mServiceSoap:=GetStatisticsSoap; mServiceSoap.XXXXXX('XXX','XXX','XXX'); ok ,搞定交差。 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论