0

我正在尝试使用 acrobat javascript 的肥皂对象来使用 wcf 服务。我已经让它毫无问题地工作了。下面是运行良好的 javascript 代码。

var repliconCredentials = {
    Username: "valid username",
    Password: "valid password"
};

var reqParam = {
    'http://replicon.com/:activity': {
        'http://replicon.com/:target': {
            'http://replicon.com/:uri': null,
            'http://replicon.com/:name': 'test activity'
        },
        'http://replicon.com/:name': 'test activity',
        'http://replicon.com/:code': null,
        'http://replicon.com/:description': null
    }
};

var response = SOAP.request({
    cURL: "https://na2.replicon.com/services/ActivityService1.svc/soap",
    oRequest: { "http://replicon.com/:PutActivity": reqParam },
    cAction: "http://replicon.com/IActivityService1/PutActivity",
    oAuthenticate: repliconCredentials
});

这成功地在 Replicon 中创建了“测试活动”。

如果您注意到 reqParam,我必须为请求中的每种类型添加前缀命名空间。如果我不这样做,请求将不起作用。在提琴手我看到对象文字 reqParam 被转换为 xml 请求。

  • 前缀命名空间的最佳方法是什么?我已经尝试过 SOAP.request 方法的 cNamespace 属性,但它不起作用,因为它在使用 SOAP 编码(默认)时不适用。
  • 有没有其他推荐的方法来创建和传递请求。我正在使用 javascript 对象构建一个 acrobat 插件。我应该尝试以原生 xml 格式传递吗?如果是这样,如何?

普通请求(json 格式)如下所示。 { "activity": { "target": { "uri": null, "name": "test activity" }, "name": "test activity", "code": null, "description": null } }

wsdl 网址是https://na2.replicon.com/services/ActivityService1.svc?wsdl

4

1 回答 1

0

不确定我是否完全理解这个问题,例如,以下是我将对 SharePoint 服务器进行的典型调用。今天不在工作,但是如果您今天找不到答案,我那里有更多资源...

soapResponse = SOAP.request({
  cNamespace: 'http://schemas.microsoft.com/sharepoint/soap/' + soapAction + 'Response',
  cURL: 'http://server/folder/_vti_bin/Lists.asmx',
  oRequest: {soapValue: soapEnv},
  cAction: 'http://schemas.microsoft.com/sharepoint/soap/' + soapAction,
  oAuthenticator: {UsePlatformAuth: 'true'},
  bEncoded: false,
  cVersion: SOAPVersion.version_1_2,
  cResponseStyle: SOAPMessageStyle.Message
});
于 2015-08-03T15:46:25.213 回答