Доступ к api.pinnaclesport.com через proxy - C#
Формулировка задачи:
Пытаюсь получить доступ к апи через прокси:
Но получаю ошибку "The remote server returned an error: (501) Not Implemented." в строке 7. Как исправить?
System.IO.Stream feedStream = null;
System.Net.WebRequest feedClient = System.Net.WebRequest.Create(@"https://api.pinnaclesports.com/v1/feed?sportid=29&last=1414860831010&oddsformat=1¤cycode=USD");
feedClient.Proxy = new WebProxy("80.232.234.114", 8080);
string authInfo = "???:??"; // login and password here
authInfo = Convert.ToBase64String(Encoding.Default.GetBytes(authInfo));
feedClient.Headers["Authorization"] = "Basic " + authInfo;
System.Net.WebResponse feedResp = feedClient.GetResponse();//!
feedStream = feedResp.GetResponseStream();
System.IO.StreamReader reader = new System.IO.StreamReader(feedStream, Encoding.UTF8);
String responseString = reader.ReadToEnd();Решение задачи: «Доступ к api.pinnaclesport.com через proxy»
textual
Листинг программы
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
var request = (HttpWebRequest)WebRequest.Create("https://api.pinnaclesports.com/v1/odds?sportId=29");
request.Proxy = new WebProxy("nn.nn.nn.nn", nnnnn);
string credentials = String.Format("{0}:{1}", "XXXXX", "XXXXX");
byte[] bytes = Encoding.UTF8.GetBytes(credentials);
string base64 = Convert.ToBase64String(bytes);
request.Headers.Add("Authorization", String.Concat("Basic ", base64));
request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)";
request.Method = "POST";
request.Accept = "application/json";
request.ContentType = "application/json; charset=utf-8";
HttpWebResponse response;
try
{
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException ex)
{
response = (HttpWebResponse)ex.Response;
}
var stream = response.GetResponseStream();
string responseBody;
using (var reader = new StreamReader(stream))
{
responseBody = reader.ReadToEnd();
}
}
}
}