Perl 中的 Web 服务客户端

2024-01-27

我是客户端 - 我希望调用 Web 服务的方法。

我有一个 Web 服务地址(.svc 后缀),并且有该方法的名称、返回值及其参数。

该服务是通过 WCF(HTML 端点)实现的。我希望通过以下方式调用这些方法SOAP::Lite。我应该为 URI、代理编写什么以及如何调用这些方法?


You set

  1. the proxy到终点并且
  2. the uri(或者在最新版本中ns) 到方法定义中的命名空间。

最简单的方法之一就是使用 WSDL URI 并创建一个SOAP::Schema对象,就像这样:

my $schema = SOAP::Schema->new( schema_url => $destination_URL )->parse();
my $services = $schema->services();

并转储这两个对象。

你可以寻找

my $method_def = $service->{ $method_name };

my $uri   = $method_def->{namespace};
my $proxy = $method_def->{endpoint}->value();

如果一切都在那里,请使用这些值。

我必须挖掘大量 SOAP::Lite 转储才能使我的 SOAP 客户端架构正常工作。如果您想解决所有麻烦,您应该知道如何调试和转储 Perl 对象。

我将向您展示服务的匿名转储:

$services = {
    ServiceName => {
        MethodName => {
            endpoint => bless( {
                _attr => {},
                _name => 'location',
                _signature => [],
                _value => [
                    # v-- This value you pass to SOAP::Lite->proxy
                    'http://some.domain.com/WebServices/SOAPEndpoint.asmx' 
                ]
            }, 'SOAP::Custom::XML::Data' 
            ),
            # v-- This value you pass to uri/default_ns/ns
            namespace => 'http://some.domain.com/',
            parameters => [ ... ]
            ...
        }
    }
};
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Perl 中的 Web 服务客户端 的相关文章

随机推荐

  • 如何从 Perl 程序打开 Excel(程序,而不是文件)?

    我目前在 Windows 中有一个 perl 程序 它通过 Spreadsheet WriteExcel 创建并填充一个 excel 文件 但我希望在程序关闭时打开该文件 我尝试用谷歌搜索信息 但我发现的只是如何在 perl 中打开和读取
  • mysql 复杂的sql

    我今天早些时候提出了一个问题 并得到了很好的答复 效果很好 这个问题的第二部分从未得到答复 所以我再试一次 SELECT q id q question a question id a answer a correct FROM SELEC
  • 将列从 VARCHAR(MAX) 更改为 VARBINARY(MAX)

    我有一张桌子 上面有一个VARCHAR MAX 列 我需要将其更改为VARBINARY MAX 我尝试使用命令 ALTER TABLE TableName ALTER COLUMN ColumnName VARBINARY MAX 但我得到
  • 具有语法着色功能的 HTML 编辑器 jQuery 插件

    我正在寻找一个 jQuery 插件 它将显示用于 HTML 创作和编辑的文本区域 我正在寻找的东西 必须支持编写 HTML 而不是所见即所得的表示形式 必须像任何富客户端 IDE 一样在您键入时为 HTML 着色 应该是 jQuery 但原
  • Git 格式补丁查看器?

    有人正在向我发送由 git format patch 生成的补丁 是否有一个 GUI 在 Linux 上 可以打开这些 patch 文件 我已经尝试了很多 diff gui 但它们所做的只是比较两个现有的文件 文件夹 没有人可以显示补丁 除
  • 在 Python 子进程中使用 Windows 路径(指向可执行文件)

    我开始在安装了 cygwin Python 2 7 的 Windows 7 x64 计算机上开发一个小型 pdf 到 jpg 脚本 以下效果完美 import subprocess filename test subprocess chec
  • 如何在不锁定 GUI 的情况下将数千个项目添加到绑定集合中

    我有一个设置 其中可能有数千个项目 认为 3000 5000 个 将添加到ObservableCollection绑定到一些可视化界面 目前 添加它们的过程非常慢 大约 4 秒 1000 个项目 当然 GUI 在此期间没有响应 有什么好方法
  • 等待 5-10 秒,然后运行 ​​Outlook 代码

    我的 Outlook 规则中有 VBA 代码 我希望当我收到具有特定主题的电子邮件时 Outlook 开始运行脚本 但是 当收到电子邮件时 Outlook 立即开始运行代码以获取上一封电子邮件 这可能是因为电子邮件刚刚收到且尚未移动到特定文
  • Android:将额外内容从一个活动传递到另一活动

    我有一个填充到活动 Main java 的 JSON 文件 此活动显示了来自我的 JSON 条目上的 URL 的 3 个随机图像 我想要做的是 我的 JSON 上有 13 个不同的条目 每当我单击显示的随机图片时 它都会转到另一个活动 Pr
  • keyup 绑定在 Firefox 中不起作用

    你可以在这里看到我的项目 http www inluxphoto com custom jsgallery index php http www inluxphoto com custom jsgallery index php 我试图让左
  • 正则表达式模式“pL”有什么作用? [复制]

    这个问题在这里已经有答案了 有一个常见的正则表达式用于 slugify url pL d u但什么是 pL在第一个preg replace mean 这里有些例子 如何在 slugify 函数中将 替换为 https stackoverfl
  • 通过 Spring Config 将“硬编码”构造函数 Arg Class 传递给 bean

    我有一个正在注入到服务中的通用类型 由于 Java 中泛型的实现方式 我需要一个构造函数 arg 或属性设置器 来保存泛型类型参数的类信息 我的问题是 我可以通过属性注入或指定构造函数参数 用 spring 传入 Class 的实例吗 我确
  • 以编程方式更新 Excel 文档

    首先 我是一家软件开发公司自动化团队的实习学生 因此我帮助在日常构建中开发自动化测试程序 我的直线经理制作了一份 Excel 文档 将用于展示我们测试环境的结果 我们的测试在 hyper V 服务器上的虚拟 PC 上运行 我希望能够使用每个
  • MongoDB批量运算符,如果不存在则插入

    我正在使用 MongoDB 批量操作来插入文档 我想做的是插入 仅当未找到文档时 如果找到文档我不想更新 即 upsert 有什么想法如何做到这一点 然而 即使在这种情况下 var obj item test bulk find item
  • 单个 PDO 查询意外达到 PHP 内存限制?

    我有一个非常简单的查询 如下所示 result pdo gt query SELECT FROM my table foreach result as r do some stuff 但是当我运行这个时 我收到以下错误 致命错误 第 15
  • 如何用Javascript让Javascript运行在页面的最后一个进程

    我遇到了一个麻烦 当页面加载时 我的 Javascript 会运行 并且 JS 日历会在我的 JS 之后加载 因此 我的 JS 不会影响 JS 日历 1 页面加载 2 我的JS运行 3 这里放一些东西 其他JS 4 JS日历启动 我在这里想
  • 将自定义验证规则添加到 Sonata User Bundle

    我已经根据文档安装了 SonataUserBundle 一切正常 除了我无法添加自定义验证规则 我的理解是 新规则应该添加到新的验证组中 然后更新 config yml 以告诉 SonataUserBundle 或 FosUserBundl
  • android中如何保持会话?

    谁能告诉我如何维护用户登录的会话 例如 当用户登录应用程序时 除非用户注销或卸载类似于 Android 中的 gmail 的应用程序 否则他们必须登录 为您开设一堂课SharedPreferences public class Sessio
  • 不区分大小写的令牌匹配

    是否可以将语法设置为不区分大小写匹配 例如一条规则 checkName CHECK Word 会匹配check name也CHECK name 的创造者PEGKit https github com itod pegkit here 当前执
  • Perl 中的 Web 服务客户端

    我是客户端 我希望调用 Web 服务的方法 我有一个 Web 服务地址 svc 后缀 并且有该方法的名称 返回值及其参数 该服务是通过 WCF HTML 端点 实现的 我希望通过以下方式调用这些方法SOAP Lite 我应该为 URI 代理