public ResponseType doRequest(OAuthBaseRequest req) { loadRequest(); UriBuilder requestURL = new UriBuilder(RequestURL); foreach (KeyValuePair <string, List <string> > param in QueryParameters) { foreach (string s in param.Value) { AddQueryParameter(requestURL, param.Key, s); } } Logger.Trace("Request: " + requestURL.Uri.AbsoluteUri); WebRequest request = WebRequest.Create(requestURL.Uri); switch (Mode) { case RequestMode.POST: request.Method = "POST"; break; case RequestMode.GET: default: request.Method = "GET"; break; } // Add Authentication req.Scope |= RequiredScopes; request.Headers.Add("Client-Id: " + req.ClientID); request.Headers.Add("Authorization: Bearer " + req.CommandAccessToken); if (Mode == RequestMode.POST) { // Do POST request.ContentType = "application/json"; JObject body = new JObject(); foreach (KeyValuePair <string, object> param in BodyParameters) { body[param.Key] = JToken.FromObject(param.Value); } byte[] data = Encoding.UTF8.GetBytes(body.ToString()); request.ContentLength = data.Length; Stream dataStream = request.GetRequestStream(); dataStream.Write(data, 0, data.Length); // Close the Stream object. dataStream.Close(); } WebResponse response = request.GetResponse(); string serverResponse = (new StreamReader(response.GetResponseStream())).ReadToEnd(); response.Close(); return(parseResponse(JObject.Parse(serverResponse))); }
public TwitchIRC(string name, OAuthBaseRequest req) { this.oAuth = req; this.Nickname = name; this.RealName = name; }
public IRCPassCommand(OAuthBaseRequest req) : this(req.CommandAccessToken) { }
public static void send(TwitchIRC irc, OAuthBaseRequest req) { new IRCPassCommand(req).sendCommand(irc); }
public TwitchAPIUtil(OAuthBaseRequest req) { this.oAuthToken = req; }