【问题标题】:SOAP Web Service with Inno Setup带有 Inno 设置的 SOAP Web 服务
【发布时间】:2016-12-18 16:10:55
【问题描述】:

在使用 Inno Setup 创建安装程序时,需要在安装过程中验证用户的凭据。该应用程序已经投入生产一段时间了,唯一需要迁移到安装程序是因为不推荐使用 Web 浏览器中对 NPAPI 的支持。已经有一种方法可以让应用程序在启动我尝试利用的应用程序之前验证用户的凭据,即通过 SOAP 请求。验证过程只是不确保用户被授权,而是为他们分配一个令牌,以防止在应用程序运行期间必须多次发送他们的信息。

我的问题,有没有办法在安装过程中发出 SOAP 请求来验证用户的凭据?如果是这样,这将如何实现?

【问题讨论】:

    标签: web-services soap inno-setup


    【解决方案1】:

    SOAP 只是基于 HTTP 的 XML。

    所以你可以使用WinHttpRequest class:

    WinHttpReq := CreateOleObject('WinHttp.WinHttpRequest.5.1');
    WinHttpReq.Open('GET', 'http://soapserver.example.com/', False);
    WinHttpReq.SetRequestHeader('Content-Type', 'application/soap+xml;charset=UTF-8');
    WinHttpReq.SetRequestHeader('SOAPAction', '...');
    WinHttpReq.Send('<data/>');
    { WinHttpReq.ResponseText will hold the SOAP response }
    

    另见HTTP POST request in Inno Setup Script


    要解析 SOAP 响应,您可以使用Msxml2.DOMDocument class

    How to read and write XML document node values?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-29
      • 2015-03-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-30
      相关资源
      最近更新 更多