Um exemplo de API do nó js para encontrar carros e contas para uma concessionária, é usado aqui para demonstrar as etapas para estender API/ML com sua própria API de descanso.
Observação
Only rest api with https support can be deployed behind API/ML, make sure to enable https support in your rest api.
Este exemplo de aplicativo expresso já tem https ativado.
//on local git clone https://github.com/zowe/sample-node-api cd sample-node-api npm install npm start
Abra seu navegador local e verifique se sample-node-api está funcionando acessando:
http://localhost:18000/accounts/
http://localhost:18000/accounts/1
http://localhost:18000/accounts/1/cars/
Observação
A pasta node_modules não será transferida, podemos fazer a instalação do npm mais tarde no próprio servidor remoto para obter os pacotes de nós necessários
cd sample-node-api npm run build scp -r dist [email protected]:</usr/lpp/extender>/sample-node-api
Para a próxima etapa, certifique-se de ter o node instalado no z/OS e de que seu PATH inclua o diretório nodejs/bin.
ssh [email protected] . ~/.profile - (Skip if you can already run "npm" on z/OS) cd </usr/lpp/extender>/sample-node-api npm install
Obtenha o pacote mais recente do artefato
Escolha a versão mais recente do pax fornecida no link acima e baixe-a em seu armazenamento local.
sftp [email protected] put <pax-name>.pax
ssh [email protected]
./<zowe-runtime-dir>/bin/zowe-install-component.sh -d <zowe-extensions-dir> -i <zowe-instance-dir> -o <component-file-path> -l <log-folder>
<zowe-extensions-dir> - Directory that will hold all external extensions installed onto zowe <zowe-instance-dir> - Current installed Zowe's instance directory <component-file-path> - The path to the component being installed (the component file transferred from local to z/OS in PART I) <log-file> - Directory that will hold the logs of the component installation
Esperamos seguir na pasta de serviço start.sh . No nosso caso, é uma pasta bin com scripts relevantes.
start.sh inicia o aplicativo do nó na porta configurada
env.sh seu script personalizado é usado para configurar a porta para nosso aplicativo de nó, fique à vontade para usar da maneira desejada
Consulte o arquivo de definição estática sample-node-api.yml
Ele configura o endpoint de serviço como sample-node-api com propriedade serviceId
Também fornecemos o caminho base do gateway API apiv1 com a propriedade gatewayUrl no mesmo arquivo.
Com efeito, o serviço pode ser acessado com o seguinte URL:
https://{host}:{GATEWAY_PORT}/{gatewayUrl}/{serviceId}/*
onde GATEWAY_PORT está configurado em $INSTANCE_DIR/instance.env
Verifique acessando o seguinte:
https://my.mainframe.com:7554/api/v1/sample-node-api/accounts/
https://my.mainframe.com:7554/api/v1/sample-node-api/accounts/1/
https://my.mainframe.com:7554/api/v1/sample-node-api/accounts/1/cars/
Catálogo de APIs


Painel do serviço de descoberta
