Usar um SDK Ruby gerado pelo API Gateway para uma API REST
O procedimento a seguir mostra como usar um SDK Ruby gerado pelo API Gateway.
nota
Estas instruções supõem que você já tenha concluído as instruções em Gerar SDKs para APIs REST no API Gateway.
Para instalar, instancie e chame um SDK Ruby gerado pelo API Gateway para uma API REST
-
Descompacte o arquivo SDK Ruby baixado. A origem do SDK gerado é mostrada da seguinte forma.
-
Crie um Ruby Gem a partir da origem do SDK gerado, usando os seguintes comandos shell em uma janela de terminal:
# change to /simplecalc-sdk directory cd simplecalc-sdk # build the generated gem gem build simplecalc-sdk.gemspec
Depois disso, simplecalc-sdk-1.0.0.gem se torna disponível.
-
Instale o gem:
gem install simplecalc-sdk-1.0.0.gem
-
Crie um aplicativo de cliente. Instancie e inicialize o cliente de SDK Ruby no aplicativo:
require 'simplecalc-sdk' client = SimpleCalc::Client.new( http_wire_trace: true, retry_limit: 5, http_read_timeout: 50 )
Se a API com autorização do tipo
AWS_IAM
estiver configurada, você pode incluir as credenciais da AWS do chamador, fornecendoaccessKey
esecretKey
durante a inicialização:require 'pet-sdk' client = Pet::Client.new( http_wire_trace: true, retry_limit: 5, http_read_timeout: 50, access_key_id: 'ACCESS_KEY', secret_access_key: 'SECRET_KEY' )
-
Faça chamadas de API por meio do SDK no aplicativo.
dica
Se você não estiver familiarizado com as convenções de chamada do método do SDK, você pode verificar o arquivo
client.rb
na pastalib
do SDK gerado. A pasta contém a documentação de cada chamada de método de API suportada.Para descobrir as operações suportadas:
# to show supported operations: puts client.operation_names
Isso resulta na seguinte tela, correspondente aos métodos de API de
GET /?a={.}&b={.}&op={.}
,GET /{a}/{b}/{op}
ePOST /
, além de uma carga no formato{a:"…", b:"…", op:"…"}
, respectivamente:[:get_api_root, :get_ab_op, :post_api_root]
Para invocar o método de API de
GET /?a=1&b=2&op=+
, chame o método de SDK Ruby a seguir:resp = client.get_api_root({a:"1", b:"2", op:"+"})
Para invocar o método de API de
POST /
com uma carga de{a: "1", b: "2", "op": "+"}
, chame o método de SDK Ruby a seguir:resp = client.post_api_root(input: {a:"1", b:"2", op:"+"})
Para invocar o método de API de
GET /1/2/+
, chame o método de SDK Ruby a seguir:resp = client.get_ab_op({a:"1", b:"2", op:"+"})
As chamadas bem-sucedidas do método de SDK retornam a seguinte resposta:
resp : { result: { input: { a: 1, b: 2, op: "+" }, output: { c: 3 } } }