2016-10-31 2 views
0

Использование NodeJS Я хотел реализовать API-интерфейс Orange SMS: http://developer.orange.com/apis/sms-eg/api-reference. Я загрузил пакет node-orangesms npm для моего проекта NodeJS. Однако я борюсь за то, чтобы заставить его работать.Использование node-orangesms для отправки SMS

Я уже получил clientId и secret от developer.orange.com для своего проекта. Я заметил, что на странице пакета на NPM: https://www.npmjs.com/package/node-orangesms не было описано, где должен быть вставлен заголовок аутентификации для функции sendSMS. Я получаю эту ошибку:

{ Error: tunneling socket could not be established, statusCode=302 
at ClientRequest.onConnect (/home/salma/Desktop/project1/node_modules/tunnel-agent/index.js:165:19) 
at ClientRequest.g (events.js:291:16) 
at emitThree (events.js:116:13) 
at ClientRequest.emit (events.js:194:7) 
at TLSSocket.socketOnData (_http_client.js:394:11) 
at emitOne (events.js:96:13) 
at TLSSocket.emit (events.js:188:7) 
at readableAddChunk (_stream_readable.js:176:18) 
at TLSSocket.Readable.push (_stream_readable.js:134:10) 
at TLSWrap.onread (net.js:551:20) code: 'ECONNRESET' } 

И я думаю, что это может быть причиной. Это мой код до сих пор:

var clientId = 'XX'; 
var secret = 'XX'; 
var userOptions = { 
    proxy: { 
    protocol: 'https', 
    host : 'api.orange.com/smsmessaging/v1/outbound/tel%3A%2BXXXXXXXX/requests', 
    port : 8080 
    }, 
    strictSSL: true 
} 

var OrangeSMS = require('node-orangesms')(clientId, secret, userOptions); 

var senderAddress = 'tel:+20XXXXXXXXXX'; 
var senderName = 'test'; 

module.exports = { 
    sendSMS: function(recipient, content, next) { 
    OrangeSMS.sendSMS("tel:+"+recipient, content, senderAddress, senderName); 
    }; 
}; 

ответ

0

Проблема была https. Это привело к сбою аутентификации. Он работал после изменения его на http.

0

Цель этой оболочки заключается в абстрактном процесса аутентификации, так что вам не придется беспокоиться об этом.

Так что технически вам никогда не нужно указывать заголовок аутентификации, потому что библиотека делает это за вас.

Возможно, ваша проблема связана с ошибкой ограничения сети?

+0

Спасибо, что ответили! Проблема заключалась в 'https'. Это привело к сбою аутентификации. Теперь он работает, и я изменил его на «http». – SalmaFG

Смежные вопросы