none
Intentando ingresar a una WebApi con OAuth 2 RRS feed

  • Pregunta

  • Hola a todos.

    Me surgió el inconveniente de que hay una webapi que me debo conectar, pero como la documentación no la tienen en .net me a costado trabajo obtener la autorización de la api. Tengo los Consumer_Secret y Consumer_Key pero al intentar acceder al método me retorna que no estoy autorizado, pero si ingreso en el método un string mas largo que "123456", me arroja el error de desbordamiento.

    Adjunto el código y antemnano muchas gracias.

      Private Shared Function RunAsync() As Task
    
            Using client = New System.Net.Http.HttpClient()
                client.BaseAddress = New Uri("http://api.com")
                Dim llave As New Keys
                llave.consumer_key = "buisdfddfdfefdfdwee231234"
                llave.consumer_secret = "783478dsf2347234782347sdf8234c"
    
    
                Dim Response As New HttpResponseMessage
                client.DefaultRequestHeaders.Accept.Clear()
                client.DefaultRequestHeaders.TryAddWithoutValidation("Authorization", "consume_Secret=" & llave.consumer_secret)
                client.DefaultRequestHeaders.TryAddWithoutValidation("Authorization", "consume_Key=" & llave.consumer_key)
             
    
                ' HTTP GET
    
                Response = client.GetAsync("aplicacion/api.php", "123456").Result
               
               
    
                      End Using
        End Function

    lunes, 13 de julio de 2015 17:47

Respuestas

Todas las respuestas

  • hola

    si usas alguna tool como ser Fiddler

    para invocar al web api como responde ?

    con esta tool podrias invocar el web api definiendo el header de autorizacion para validar que response de http obtienes

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    lunes, 13 de julio de 2015 18:38
  • Hola Leando.

    No utilizo ninguna tool, Pero me retorna lo siguiente, cuando se ejecuta el GET

    {StatusCode: 401, ReasonPhrase: 'Authorization Required', Version: 1.1, Content: System.Net.Http.StreamContent, Headers:
    {
      Keep-Alive: timeout=15, max=100
      Connection: Keep-Alive
      Date: Mon, 13 Jul 2015 20:40:12 GMT
      Server: Apache
      WWW-Authenticate: OAuth realm="xxxxx"
      X-Powered-By: PHP/5.3.14 ZendServer/5.0
      Content-Length: 256
      Content-Type: text/html
    }}

    lunes, 13 de julio de 2015 20:41
  • hola

    >>No utilizo ninguna tool

    ya se que no usas ninguna, por eso aconsejaba que lo hicieras

    con fiddler puedes invocar definindo el verbo http GET y asignando los header para ver si puede invocarlo o si es un problema con el codigo

    si desde fiddler que es lo mas basico, no puedes invocarlo, olvidate poder hacerlo desde codigo

    NinjaTip #13 | Consumiendo WebAPI desde Fiddler

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    lunes, 13 de julio de 2015 21:06