
Compartilhar:
Alex Lakatos é um Developer Advocate de JavaScript na Nexmo. Em seu tempo livre, ele atua como voluntário na Mozilla como palestrante técnico e mentor do programa Reps. Como desenvolvedor de JavaScript que trabalha na web aberta, ele vem ampliando seus limites a cada dia. Quando não está programando em Londres, ele gosta de viajar pelo mundo; por isso, é provável que você o encontre em um lounge de aeroporto.
O SDK para servidor Node.js da Nexmo passou a oferecer suporte à substituição do host
Tempo de leitura: 1 minuto
Recentemente, lançamos a versão 2.6.0 do nosso SDK para Node.js e adicionamos a possibilidade de alterar o host usado para fazer as solicitações HTTP.
Por quê?
Esse recurso permite que você substitua os hosts padrão, api.nexmo.com e rest.nexmo.com, no SDK. Um dos casos de uso mais comuns para esse recurso é contornar o balanceador de carga e direcionar as solicitações HTTP para um de nossos data centers específicos por localização, por exemplo, api-sg-1.nexmo.com.
Vamos dar uma olhada no nosso "Fazer uma chamada de saída com um NCCO" e alterá-lo para usar o Data Center de Cingapura ao fazer a ligação.
const Nexmo = require('nexmo')
const nexmo = new Nexmo({
apiKey: NEXMO_API_KEY,
apiSecret: NEXMO_API_SECRET,
applicationId: NEXMO_APPLICATION_ID,
privateKey: NEXMO_APPLICATION_PRIVATE_KEY_PATH
}, {
apiHost: 'api-sg-1.nexmo.com'
})
nexmo.calls.create({
to: [{
type: 'phone',
number: TO_NUMBER
}],
from: {
type: 'phone',
number: NEXMO_NUMBER
},
ncco: [{
"action": "talk",
"text": "This is a text to speech call from Nexmo"
}]
});Olhando com atenção, a única alteração que fizemos no trecho de código foi adicionar um objeto de opções na Nexmo instância, com uma apiHost propriedade.
Outro caso de uso comum para esse recurso é utilizar um proxy ou gateway para inspecionar suas solicitações antes que elas sejam encaminhadas para a API da Nexmo. Vamos usar o curlhub para inspecionar todo o nosso tráfego de API.
curlhub interface
Depois que você se cadastrar, o curlhub fornece um Bucket Id. Por exemplo, n43s3qc13thd. Isso é acrescentado a qualquer host que você queira redirecionar. Portanto, se quisermos redirecionar api.nexmo.com, o host correspondente do curlhub é api-nexmo-com-n43s3qc13thd.curlhub.io. A mesma lógica se aplica a rest.nexmo.com, e o host correspondente do curlhub é rest-nexmo-com-n43s3qc13thd.curlhub.io.
Para utilizá-los como proxies para as solicitações feitas pelo nosso SDK, teremos que adicionar o apiHost e restHost propriedades à nossa new Nexmo instância.
const Nexmo = require('nexmo')
const nexmo = new Nexmo({
apiKey: NEXMO_API_KEY,
apiSecret: NEXMO_API_SECRET,
applicationId: NEXMO_APPLICATION_ID,
privateKey: NEXMO_APPLICATION_PRIVATE_KEY_PATH
}, {
apiHost: 'api-nexmo-com-n43s3qc13thd.curlhub.io',
restHost: 'rest-nexmo-com-n43s3qc13thd.curlhub.io'
}) O que vem a seguir
Estamos trabalhando para aprimorar nosso SDK do Node.js, e você pode acompanhar nosso progresso em https://github.com/nexmo/nexmo-node. Se você tiver alguma sugestão ou problema, sinta-se à vontade para relatá-los no GitHub ou em nossa Slack da comunidade.
Compartilhar:
Alex Lakatos é um Developer Advocate de JavaScript na Nexmo. Em seu tempo livre, ele atua como voluntário na Mozilla como palestrante técnico e mentor do programa Reps. Como desenvolvedor de JavaScript que trabalha na web aberta, ele vem ampliando seus limites a cada dia. Quando não está programando em Londres, ele gosta de viajar pelo mundo; por isso, é provável que você o encontre em um lounge de aeroporto.