public static HttpRequestParameters CreateRequestParams(string accessToken) { var param = new HttpRequestParameters(@"https://www.google.com/m8/feeds/contacts/default/full"); //TODO:Validate that I should be passing this in the query string. Surly I want this encoded in the POST stream -LC param.QueryStringParameters.Add("access_token", accessToken); param.QueryStringParameters.Add("max-results", "0"); param.Headers.Add("GData-Version", "3.0"); return param; }
public IObservable<string> GetResponse(HttpRequestParameters requestParameters) { return Observable.Create<string>( o => { //TODO: Add a correlationId to this logging. _logger.Trace(requestParameters.ToString()); var request = requestParameters.CreateRequest(_logger); var q = from response in request.GetResponseAsync() .ToObservable() .Do(r=>_logger.Trace(r.Headers.ToString())) let responseStream = response.GetResponseStream() let reader = new StreamReader(responseStream) from responseContent in reader.ReadToEndAsync().ToObservable() select responseContent; return q.Do(r=>_logger.Trace(r)) .Subscribe(o); }); }
private static HttpRequestParameters CreateRequestParams(string accessToken) { var param = new HttpRequestParameters(@"https://api.linkedin.com/v1/people/~"); param.QueryStringParameters.Add("oauth2_access_token", accessToken); return param; }
private static HttpRequestParameters CreateContactPageRequest(IAccount account, int startIndex, DateTime lastUpdated) { //See https://developers.google.com/google-apps/contacts/v3/reference?hl=es#Parameters for reference on query API. var request = new HttpRequestParameters("https://www.google.com/m8/feeds/contacts/default/full"); request.QueryStringParameters.Add("access_token", HttpUtility.UrlEncode(account.CurrentSession.AccessToken)); request.QueryStringParameters.Add("start-index", startIndex.ToString(CultureInfo.InvariantCulture)); request.QueryStringParameters.Add("max-results", "1000"); request.QueryStringParameters.Add("showdeleted", "true"); if (lastUpdated != default(DateTime)) { var formattedDate = lastUpdated.ToString("yyyy-MM-ddT00:00:00"); request.QueryStringParameters.Add("updated-min", formattedDate); } request.Headers.Add("GData-Version", "3.0"); return request; }