2017-08-29 40 views
0

我在NodeJS項目(在Docker內部運行)中使用https://www.npmjs.com/package/magento-api-xmlrpc庫來通過XML-RPC連接到Magento v1.x。在NodeJS中連接到Magento XML-RPC |未知的XML-RPC標記'TITLE'錯誤

我本地測試它在我的窗戶是這樣的:

let magento = new MagentoAPI({ 
    host: 'test-domain.com', 
    port: 443, 
    path: '/api/xmlrpc', 
    login: 'api-username', 
    pass: 'api-password' 
}); 

magento.login(function(err, sessId) { 
    if (err) { 
     console.log('Credentials verification failed:\n%j', err); 
     return cb(err, { verified: false }); 
    } else { 
     console.log("Login Successful - Session Id: " + sessId); 
     return cb(null, { verified: true }); 
    } 
}); 

和它的作品:

Login Successful - Session Id: 1d0d9e764d7d955470f92fa93fb53ca8 

當我在泊塢窗容器測試了這個(用精確的測試配置+腳本) ,我得到這個錯誤:

{"original":{"message":"Unknown XML-RPC tag 'TITLE'","name":"Error"},"name":"Magento Error","message":"An error occurred at login"}

有什麼奇怪的是,我只在Windows中看到上述錯誤,如果我將測試腳本的port設置爲80(我知道這是無效的)。

任何想法可能會在這裏出錯?

+0

我相信這裏的問題是,你的服務器有超文本的訪問,如果你能不域'test-domain.com/API/xmlrpc'它可能超文本訪問配置另一個域解決這個問題 –

+0

所有的憑據都是正確的,我忘了該網站有IP白名單。在添加Docker容器的公共IP後它現在工作正常。 – Latheesan

回答

0

對不起,這不是一個錯誤!

事實證明,我們在我正在測試的網站上列出了IP白名單,並且在允許magento dev站點上的碼頭容器的公共IP後,它開始工作。

虛驚......