Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 使用节点soap在soap请求中创建的重复名称空间_Node.js_Web Services_Soap_Node Soap - Fatal编程技术网

Node.js 使用节点soap在soap请求中创建的重复名称空间

Node.js 使用节点soap在soap请求中创建的重复名称空间,node.js,web-services,soap,node-soap,Node.js,Web Services,Soap,Node Soap,我正在使用该库调用节点js中的soap请求 它具有以下请求有效负载格式: <soapenv:Envelope > <soapenv:Header/> <soapenv:Body> <typ:uploadFileToUcm> <typ:document> <erp:Content></erp:Content> <erp:

我正在使用该库调用节点js中的soap请求

它具有以下请求有效负载格式:

<soapenv:Envelope >
   <soapenv:Header/>
   <soapenv:Body>
      <typ:uploadFileToUcm>
         <typ:document>
            <erp:Content></erp:Content>
            <erp:FileName>?</erp:FileName>
            <!--Optional:-->
            <erp:ContentType>?</erp:ContentType>
            <!--Optional:-->
            <erp:DocumentTitle>?</erp:DocumentTitle>
            <!--Optional:-->
            <erp:DocumentAuthor>?</erp:DocumentAuthor>
            <!--Optional:-->
            <erp:DocumentSecurityGroup>?</erp:DocumentSecurityGroup>
            <!--Optional:-->
            <erp:DocumentAccount>?</erp:DocumentAccount>
            <!--Optional:-->
            <erp:DocumentName>?</erp:DocumentName>
            <!--Optional:-->
            <erp:DocumentId>?</erp:DocumentId>
         </typ:document>
      </typ:uploadFileToUcm>
   </soapenv:Body>
</soapenv:Envelope>
并将其作为:

client.method(args, function (err, result) {

});
但是在打印
client.lastrequest
时,负载具有重复的名称空间,如下所示:

<soap:Body>
<types:uploadFileToUcm 
    xmlns:types="http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService/types/" 
    xmlns="http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService/types/">
    <types:document>
        <ns0:Content xmlns:ns0="http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService/">UEsDBBQAAAAIAAuEaEue7VBfgQAAAGoBAAAcAAAASW52VHJhbnNhY3Rpb25zSW50ZXJmYWNlLmNzdvPMK0vNK8kvqlTwL0pXCA021AEBIBlgYGBsYGQK5ASXJnnmlcGkMICljmsikDIyMDTXNzTUNzBWMDCwAiMdHd/M4uTUnJzEvNT80mKFoNTk1MyCEuzG6OhYgAhfN3cdI3NLc2MDQ0MdY1MDIwMzM0McNiMBYx0jhLZBB1z9XHi5AFBLAQIUABQAAAAIAAuEaEue7VBfgQAAAGoBAAAcAAAAAAAAAAEAIAAAAAAAAABJbnZUcmFuc2FjdGlvbnNJbnRlcmZhY2UuY3N2UEsFBgAAAAABAAEASgAAALsAAAAAAA==</ns0:Content>
        <ns0:FileName 
            xmlns:ns0="http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService/" 
            xmlns:ns0="http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService/">Abc12341</ns0:FileName>
        <ns0:ContentType 
            xmlns:ns0="http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService/" 
            xmlns:ns0="http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService/">zip</ns0:ContentType>
        <ns0:DocumentTitle 
            xmlns:ns0="http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService/" 
            xmlns:ns0="http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService/">Abc12341</ns0:DocumentTitle>
        <ns0:DocumentAuthor 
            xmlns:ns0="http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService/" 
            xmlns:ns0="http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService/">Abc12341</ns0:DocumentAuthor>
        <ns0:DocumentSecurityGroup 
            xmlns:ns0="http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService/" 
            xmlns:ns0="http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService/">FAFusionImportExport</ns0:DocumentSecurityGroup>
        <ns0:DocumentAccount 
            xmlns:ns0="http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService/" 
            xmlns:ns0="http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService/">scm/inventoryTransaction/import</ns0:DocumentAccount>
        <ns0:DocumentName 
            xmlns:ns0="http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService/" 
            xmlns:ns0="http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService/">Abc12341</ns0:DocumentName>
    </types:document>
    </types:uploadFileToUcm>
</soap:Body>

Uesdbqaaaaaiaaueeue7Vbfgqaaaaaaaaaaaaaaaaaaaaasw52vhbny3rpb25zsw50zxjmywnlmzdvpmk0vnk8kvqltw0pxca021aebiblgygbsygqk5asxjnlcjmddztunzbwmdcwaidhd/m4utunzevnt80mkfontzg6Ohygah3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3esfbgaaaaaaaaaasgaaaaaaaaaaaaaaaaaa==
Abc12341
拉链
Abc12341
Abc12341
FAFusionImportExport
scm/库存事务处理/导入
Abc12341
这里ns0在每个参数中重复

问题可能在于我传递args的方式


如何解决此问题?

我对节点soap也有同样的问题,因此我使用了不同的节点库,它工作得非常好。试试强soap,它基于节点soap,但显然是一个完全重写,并且有许多相同的贡献者:

调用Oracle erp集成SOAP API(importBulkData、uploadFileToUcm等)的代码基本相同,但授权除外,如下所示

var soap = require('strong-soap').soap;

var data = {};
//code to build base64 zip file goes here

var url = 'https://<host>/publicFinancialCommonErpIntegration/ErpIntegrationService?WSDL';
var args = {
    "document": {
        "Content": data,
        "FileName": "glBudgetData.zip",
        "ContentType": "zip",
        "DocumentTitle": "glBudgetData.zip",
        "DocumentAuthor": "casey.brown",
        "DocumentSecurityGroup": "FAFusionImportExport",
        "DocumentAccount": "fin$/budgetBalance$/import$",
        "DocumentName": "UCM91004"
    }
};

var options = {};

soap.createClient(url, options, function(err, client) {
    client.setSecurity(new soap.BasicAuthSecurity('casey.brown', '<your password here>'));
    client.uploadFileToUcm(args, function(err, result) {
        console.log(result);
 });
var-soap=require('strong-soap').soap;
变量数据={};
//构建base64 zip文件的代码如下
var url='1〕https:///publicFinancialCommonErpIntegration/ErpIntegrationService?WSDL';
变量args={
“文件”:{
“内容”:数据,
“文件名”:“glBudgetData.zip”,
“ContentType”:“zip”,
“DocumentTitle”:“glBudgetData.zip”,
“文献作者”:“凯西·布朗”,
“DocumentSecurityGroup”:“FAFusionImportExport”,
“文档帐户”:“fin$/budgetBalance$/import$”,
“文档名称”:“UCM91004”
}
};
var选项={};
createClient(url、选项、函数(错误、客户端){
client.setSecurity(新的soap.BasicAuthSecurity('casey.brown','');
client.uploadFileToUcm(参数,函数(错误,结果){
控制台日志(结果);
});
在命令行上运行,输出为:{result:'2047316'},这是导入文件的UCM文档Id


祝你好运!

抱歉,我希望以上编辑内容足以回答问题。
npm install strong-soap
var soap = require('strong-soap').soap;

var data = {};
//code to build base64 zip file goes here

var url = 'https://<host>/publicFinancialCommonErpIntegration/ErpIntegrationService?WSDL';
var args = {
    "document": {
        "Content": data,
        "FileName": "glBudgetData.zip",
        "ContentType": "zip",
        "DocumentTitle": "glBudgetData.zip",
        "DocumentAuthor": "casey.brown",
        "DocumentSecurityGroup": "FAFusionImportExport",
        "DocumentAccount": "fin$/budgetBalance$/import$",
        "DocumentName": "UCM91004"
    }
};

var options = {};

soap.createClient(url, options, function(err, client) {
    client.setSecurity(new soap.BasicAuthSecurity('casey.brown', '<your password here>'));
    client.uploadFileToUcm(args, function(err, result) {
        console.log(result);
 });