Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

CONFIGURACIÓN NECESARIA

  • Handlers: para poder tener acceso al API de GAM la cual permite gestionar el acceso a los servicios mediante un token de acceso, para esto el archivo web.config debe contener en la sección de handlers el elemento:

Code Block
languagehtml
<add name="GeneXus.Http.GXOAuthAccessToken" verb="*" path="GXOAuthAccessToken.aspx" type="GeneXus.Http.GXOAuthAccessToken,GxClasses" />

  • Usuario: es recomendable crear un usuario en el GAM para para permitir el acceso exclusivo a los web services.

  • Roles y Permisos: Se debe crear un rol específico para el uso de web services con los permisos de los web services expuestos y este rol debe ser asignado al usuario que se utilizará para la conexión. Por cada web service expuesto sobre una transacción Genexus existen permisos relacionados, los cuales deben llevar el sufijo con el permiso otorgado, la estructura es

Code Block
[Transaccion]_Service_[Tipo de Permiso]

Entre los tipos de permisos están:

  • Execute
    Permite operaciones GET

  • Insert
    Permite operaciones POST

  • Delete
    Permite operaciones DELETE

  • Update
    Permite operaciones PUT

  • FullControl
    Permite realizar GET, POST, PUT y DELETE sobre el web service.

WEB SERVICE DE AUTENTICACIÓN

  • ACCESS TOKEN

Para obtener el token de acceso es necesario realizar POST con los parámetros

Image Modified

Donde los parámetros client_id y client_secret deben obtenerse de los parámetros de la aplicación en el GAM

esta información puede ser revisada en el menú Configuración - Seguridad - Configuración de la Aplicación

PETICIÓN DE ACCESO

  • POST a

Code Block
HTTP://<SERVER>/<APPDIR>/oauth/access_token

Incluyendo en el body:

Code Block
languagehtml
client_id=1234561ad52a42919a221bc796d0d6b0&client_secret=1111114313d243dd987b3aadb250e63b&granttype=password&scope=FullControl&username=admin&password=admin123

  • Como respuesta se obtendrá un JSON con el token de acceso el cual deberá utilizarse en el encabezado de petición de consumo de los objetos expuestos

Code Block
languagejson
{ 
"access token" : "c9919e10e118"
"scope" : "FullControl"
}

CONSUMO DE WEB SERVICE

  • Petición con la estructura:

Code Block
HTTP://<SERVER>/<APPDIR>/rest/WEB_SERVICE/PARM_1/PARM_2/PARM_N

  • Encabezados obligatorios:

Code Block
languagehtml
“Content-Type”, ”application/json”
“Authorization”, “OAuth ” + access_token
“GENEXUS-AGENT”, “SmartDevice Application”


Note

Respete los encabezados obligatorios para que pueda consumir el WEB SERVICE respectivo

Warning

NO OLVIDE crear un usuario en el GAM para para permitir el acceso exclusivo a los web services.

Live Search
spaceKeyDOC
placeholderBúsqueda en esta Pagina
typepage

Artículos Relacionados

Filter by label (Content by label)
showLabelsfalse
max5
showSpacefalse
cqllabel in ( "informacion" , "tecnica" , "rest" , "api" , "access" , "token" ) and type = "page" and space = "DOC"

Artículos Actualizados Recientemente

Recent updates
typespage
max5
spacesDOC
themeconcise
hideHeadingtrue
Change History