通过HTTP适配器传递参数?

2023-12-09

我想在用户注册我的混合应用程序(基于 IBM Worklight 6.0)后向他/她发送一封电子邮件。

我想将用户的参数(电子邮件 ID)传递到托管的 PHP 文件。我尝试直接在 URL 中发送邮件,如下所示,效果如下:

http://www.xxxyyyzzz.comli.com/[email protected]

如何通过 Worklight 适配器执行相同操作?

适配器.XML

 <wl:adapter name="sendmail"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:wl="http://www.worklight.com/integration"
xmlns:http="http://www.worklight.com/integration/http">

<displayName>sendmail</displayName>
<description>sendmail</description>
<connectivity>
    <connectionPolicy xsi:type="http:HTTPConnectionPolicyType">
        <protocol>http</protocol>
        <domain>xxxyyy.comli.com</domain>
        <port>80</port> 

        <sslCertificateAlias></sslCertificateAlias> 
        <sslCertificatePassword></sslCertificatePassword>
        -->     
    </connectionPolicy>
    <loadConstraints maxConcurrentConnectionsPerNode="2" />
</connectivity>

<procedure name="getStories"/>

<procedure name="getStoriesFiltered"/>

 </wl:adapter>

适配器 IMP.JS

function getStories(interest) {
path = getPath(interest);

var input = {
    method : 'get',
    returnedContentType : 'html',
    path : '/email.php?a='
};


return WL.Server.invokeHttp(input);
}

参数在哪里?您没有将其传递给适配器过程 AFAICT。

尝试下面的方法(我没有对其进行端到端测试,因为我没有带有 PHP 脚本来侦听请求的服务器)。

HTML

Your email address: <input type="text" id="emailaddr"/>
<input type="button" onclick="sendEmail()" value="Submit Email Address"/>

JavaScript

function sendEmail() {
    var invocationData = {
            adapter : 'myAdapter',
            procedure : 'sendEmailProcedure',
            parameters : [$('#emailaddr').val()] // the email adrress taken from the HTML...
    };

    var options = {
            onSuccess : success,
            onFailure : failure
    };

    WL.Client.invokeProcedure(invocationData, options);
}

function success() {
    WL.Logger.debug ("invocation succeeded.");
}
function failure() {
    WL.Logger.debug ("invocation failed.");
}

myAdapter.xml

...
...
<connectivity>
    <connectionPolicy xsi:type="http:HTTPConnectionPolicyType">
        <protocol>http</protocol>
        <domain>host-address</domain>
        <port>80</port> 
    </connectionPolicy>
    <loadConstraints maxConcurrentConnectionsPerNode="2" />
</connectivity>

<procedure name="sendEmailProcedure"/>

myAdapter-impl.js

function sendEmailProcedure(emailAddress) {
    var input = {
        method : 'get',
        returnedContentType : 'html',
        path : '/email.php?a=' + emailAddress
    };

    return WL.Server.invokeHttp(input);
}


查看相关问题:

  • IBM Worklight - 如何将参数从应用程序传递到适配器?
  • IBM Worklight 6.1 - 如何在适配器中发送发布值?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通过HTTP适配器传递参数? 的相关文章

随机推荐

  • 在 Clojure 中喜结良缘:没有(显式的、丑陋的)突变的循环引用?

    在我的回答中Clojure 理解示例我有一个处理自己的输出的函数 defn stream seed defn helper slow concat map str first slow seed lazy seq helper rest s
  • Google 地球 KML 中的文本叠加

    我想添加 KML 文件上次更新的日期 时间 以便在 Google 地球中显示为覆盖图 无论如何可以做到这一点吗 我会考虑更新 KML 文件中的文本 然后将其显示在谷歌地球中 非常感谢 一个技巧是使用谷歌图表API从文本动态创建图像并将其用作
  • C# MySQL 错误“列计数与第 1 行的值计数不匹配”

    Query SQL MySqlCommand command1 new MySqlCommand INSERT INTO Equipamento equipamento situacao modelo nr serie avaria est
  • 如何使用 EF6 Code First 将外键属性公开给具有导航属性的现有实体

    我有一个已经与底层数据库一起使用的实体 并且它是使用可选实体 1 0 1 的导航属性创建的 因此 按照默认约定 EF 在数据库中创建了一个可为空的外键列 并根据该约定为其指定了带下划线的 MyProp Id 名称 现在 我希望将该外键公开为
  • 在 bash 脚本中使用 grep 在日志文件上使用 tail -f

    我想创建一个脚本来查找正在写入的日志文件中的特定字符串 我想获取第一个结果并将其放入变量中以供以后使用 这将通过 SSH 连接使用 如下所示 ssh email protected bash s lt usr local bin check
  • 默认情况下使用 uuid 时 Cassandra TimeUUID 泛洪文件描述符

    我有 Cassandra 模型 import uuid from cassandra cqlengine import columns from cassandra cqlengine models import Model class M
  • 如何使用 24 位位图的 ScanLine 属性?

    如何使用ScanLine24 位位图像素操作的属性 为什么我应该更喜欢使用它而不是经常使用Pixels财产 一 简介 在这篇文章中我将尝试解释ScanLine属性用法仅适用于 24 位位图像素格式以及您是否确实需要使用它 首先来看看是什么让
  • 带有 CUDA 的 Pytorch 在 Ubuntu 上本地安装失败

    我正在尝试使用 CUDA 安装 PyTorch 我按照中提到的说明 使用 conda 安装 进行操作https pytorch org get started locally conda 安装 pytorch torchvision tor
  • 在 Ubuntu 上安装 Mono-Complete 4.8

    我正在尝试安装Mono 4 8 in a Docker图片 但我下载失败 这是 dockerfile RUN apt get update apt get install y curl rm rf var lib apt lists apt
  • 如何附加到 Azure 存储文件共享中的文件?

    我想将条目写入存储在 Azure 文件存储中的日志文件 我目前有这个 var log My log entry var client storageAccount CreateCloudFileClient var share client
  • 如何在 MongoDB shell 中创建可尾游标?

    我想直接在 MongoDB 中为上限集合创建一个无限处理循环 但我找不到如何在 MongoDB shell 中获取 tailabale 游标 在 Python 中可以使用tailable选项中集合 find 尽管 您可以使用 addOpti
  • Java:读取一个巨大文件的最后n行

    我想读取一个非常大的文件的最后 n 行 而不使用 Java 将整个文件读入任何缓冲区 内存区域 我查看了 JDK API 和 Apache Commons I O 但无法找到适合此目的的一个 我正在考虑 tail 或 less 在 UNIX
  • 使用for循环匹配具有各种扩展名的文件[重复]

    这个问题在这里已经有答案了 我正在尝试匹配并循环扩展名为 txt h py 的文件 在特定文件夹 arg 中 这是我所做的 for file in arg txt h py do done 然而 即使我有这样的文件 我也没有得到所有扩展名的
  • Android-Listview项目滚动时背景颜色变化

    My ListView包含两个Textviews 在一行中 第一个用于名称 第二个用于结果 我需要更改结果的背景颜色TextView根据结果 就像如果通过那么结果TextView结果失败时颜色将为绿色TextView颜色将是红色 我有十行L
  • NSJSONSerialization + AFNetworking 出现无法识别的选择器错误

    Update 我刚刚使用以下命令测试了从服务器返回的 JSON 格式JSONlint没关系 我在 AFNetworking 调用返回 JSON 数据的 php 脚本时遇到 NSJSONSerialization 异常 我在这里查看了具有相同
  • 复制时可执行文件以某种方式损坏

    我正在使用Qt的QNetworkAccessManager从一个地方 当前是本地机器 但将来它将是一个HTTP服务器 下载一个文件并将其临时存储在TEMP文件中 linux ubuntu 我发现的问题是该文件 这是一个可执行文件 在此过程中
  • PHP 获取目录中图像的尺寸

    我有大量照片需要整理 我需要知道每张照片的尺寸才能知道 否则需要重新调整大小 作为一名程序员 我相信必须有一种更快的方法来做到这一点 我已经走了很远了 以下代码读取目录和所有子目录 但当我尝试提取尺寸时 循环在需要检查的所有图片的 8 处停
  • 如何删除数组中的“空”元素?

    我目前正在做一个编码挑战 其中指出 给定一个单词列表 返回可以在美式键盘的一行上使用字母输入的单词 如下图所示 这是 QWERTY 键盘的图像 例子 Input Hello Alaska Dad Peace Output Alaska Da
  • Rust 打印后从控制台读取输入

    我只是在制作一个小程序 我试图通过控制台从用户那里获取输入 这是我的代码 print Enter values seperated by spaces let mut input String new match io stdin read
  • 通过HTTP适配器传递参数?

    我想在用户注册我的混合应用程序 基于 IBM Worklight 6 0 后向他 她发送一封电子邮件 我想将用户的参数 电子邮件 ID 传递到托管的 PHP 文件 我尝试直接在 URL 中发送邮件 如下所示 效果如下 http www xx