Uso de un SDK de Ruby generado por API Gateway para una API REST - Amazon API Gateway

Uso de un SDK de Ruby generado por API Gateway para una API REST

En el siguiente procedimiento se muestra cómo crear un SDK de Ruby generado por API Gateway.

nota

En estas instrucciones, se presupone que ya se ha completado el procedimiento descrito en Generación de SDK para las API de REST en API Gateway.

Para instalar, instanciar e invocar un SDK de Ruby generado por API Gateway para una API REST
  1. Descomprima el archivo descargado del SDK de Ruby. El código fuente del SDK generado es el siguiente.

    El archivo descargado del SDK de Ruby se descomprime en un módulo de Ruby

  2. Cree una gema de Ruby a partir del código fuente del SDK generado. Para ello, utilice los siguientes comandos shell en una ventana del terminal:

    # change to /simplecalc-sdk directory cd simplecalc-sdk # build the generated gem gem build simplecalc-sdk.gemspec

    Una vez realizada esta operación, simplecalc-sdk-1.0.0.gem pasa a estar disponible.

  3. Instale la gema:

    gem install simplecalc-sdk-1.0.0.gem
  4. Cree una aplicación cliente. Instancie e inicialice el cliente del SDK de Ruby en la aplicación:

    require 'simplecalc-sdk' client = SimpleCalc::Client.new( http_wire_trace: true, retry_limit: 5, http_read_timeout: 50 )

    Si la API tiene una autorización de tipo AWS_IAM, puede incluir las credenciales de AWS del intermediario suministrando accessKey y secretKey durante la inicialización:

    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' )
  5. Realice llamadas a la API a través del SDK de la aplicación.

    sugerencia

    Si no está familiarizado con las convenciones de llamada a métodos del SDK, puede consultar el archivo client.rb de la carpeta lib del SDK generado. La carpeta contiene documentación sobre las llamadas a cada uno de los métodos de API compatibles.

    Para reconocer las operaciones admitidas:

    # to show supported operations: puts client.operation_names

    Esto genera la siguiente llamada, que corresponde a los métodos de la API GET /?a={.}&b={.}&op={.}, GET /{a}/{b}/{op} y POST /, junto con una carga en el formato {a:"…", b:"…", op:"…"}, respectivamente:

    [:get_api_root, :get_ab_op, :post_api_root]

    Para invocar el método GET /?a=1&b=2&op=+ de la API, llame al siguiente método del SDK de Ruby:

    resp = client.get_api_root({a:"1", b:"2", op:"+"})

    Para invocar el método POST / de la API con una carga {a: "1", b: "2", "op": "+"}, llame al siguiente método del SDK de Ruby:

    resp = client.post_api_root(input: {a:"1", b:"2", op:"+"})

    Para invocar al método GET /1/2/+ de la API, llame al siguiente método del SDK de Ruby:

    resp = client.get_ab_op({a:"1", b:"2", op:"+"})

    Las llamadas al método del SDK que se realizan correctamente devuelven la siguiente respuesta:

    resp : { result: { input: { a: 1, b: 2, op: "+" }, output: { c: 3 } } }