Ejemplo n.º 1
0
    public JsonResult Getrequest(string key)
    {
        Task <string> secret = AWSDynamoDB.QueryByClientGuid(key);
        // The 8266 uses 'Basic' authenication so be have to Base64 decode it and account for the user name
        // get basic authenication token
        string appToken = Request.Headers["Authorization"];
        string auth     = appToken.Substring(6);
        string decoded  = Base64Decode(auth);

        if (secret.Result != decoded.Substring(7))
        {
            return(Json(invalidAuthToken));
        }

        Task <List <RequestQ> > requests = AWSDynamoDB.FetchQItem(key);

        if (requests.Result.Count > 0)
        {
            AWSDynamoDB.PutMonitor(key, false); //add this client to the list of active endpointId's
            string jsonResult = JsonConvert.SerializeObject(requests.Result[0]);
            return(Json(JObject.Parse(jsonResult)));
        }
        else
        {
            AWSDynamoDB.PutMonitor(key, true);
            return(Json(noResponseReturn));
        }
    } //Getrequest