I am using C# HttpClient.
using (var client = new HttpClient(new OAuth1MessageHandler(new HttpClientHandler(), "consumerKey", "consumerSecret", "Token", "TokenSecret")))
{
client.BaseAddress = new Uri("https://stream.twitter.com/1.1/");
client.DefaultRequestHeaders.Accept.Clear();
//client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
client.DefaultRequestHeaders.Accept
.Add(new MediaTypeWithQualityHeaderValue("application/x-www-form-urlencoded"));
client.Timeout = TimeSpan.FromMinutes(5);
//var locations = HttpUtility.UrlEncode("locations=-122.75,36.8,-121.75,37.8");
var request = new HttpRequestMessage(HttpMethod.Get, "statuses/filter.json?track=twitter&locations=-122.75,36.8,-121.75,37.8");
var response = await client.SendAsync(request,HttpCompletionOption.ResponseHeadersRead);
var stream = await response.Content.ReadAsStreamAsync();
using (var reader = new StreamReader(stream))
{
while (!reader.EndOfStream)
{
Console.WriteLine(reader.ReadLine());
}
}
}
I am unable to format code correctly. Oauth1 headers are being sent correctly. I am only getting unauthorized on Location filter.