C# AlphaVantage.NET:如何使用代理

C# AlphaVantage.NET: How-to use Proxy

我想使用这个库AlphaVantage.NET。 我试过演示

string apiKey = "1"; // enter your API key here

var client = new AlphaVantageStocksClient(apiKey);

// retrieve daily time series for stocks of Apple Inc.:
StockTimeSeries timeSeries = await client.RequestDailyTimeSeriesAsync("AAPL", TimeSeriesSize.Compact, adjusted: false);
foreach (var dataPoint in timeSeries.DataPoints)
{
    Console.WriteLine($"{dataPoint.Time}: {dataPoint.ClosingPrice}");
}

// retrieve stocks batch quotes for Apple Inc. and Facebook Inc.:
ICollection<StockQuote> batchQuotes = await client.RequestBatchQuotesAsync(new[] { "AAPL", "FB" });
foreach (var stockQuote in batchQuotes)
{
    Console.WriteLine($"{stockQuote.Symbol}: {stockQuote.Price}");
}

但是...有没有像在 Using-WebClient 中那样添加代理的选项?例如:

using (WebClient wc = new WebClient())
{
    IWebProxy proxy = WebRequest.GetSystemWebProxy();
    proxy.Credentials = CredentialCache.DefaultCredentials;

    wc.Proxy = proxy;
    var json = wc.DownloadString(@"https://www.alphavantage.co/query?function=TIME_SERIES_WEEKLY&symbol=BLDP&apikey=#############");
}

抱歉我的英语不好:/

很遗憾没有。

查看库的源代码,intercepting/injecting 无法使用底层的 http 客户端。客户端对库来说是私有的,并且在此处的核心项目中作为一个静态变量被更新:https://github.com/LutsenkoKirill/AlphaVantage.Net/blob/master/AlphaVantage.Net/src/AlphaVantage.Net.Core/AlphaVantageCoreClient.cs#L24