私はこれをよく理解していません。ウェブサイトのHTMLコンテンツを取得するためのシンプルなサーバーサイドコードを書くことができます。私のローカルPCまたは任意のホスティングで実行し、任意のWebサイトから任意のページを取得します。しかし、これはjavaScriptで行うことはできませんでしたか?CORSサーバー側とクライアント側?なぜ、1つは動作しますが、もう1つは動作しませんか?
どのような種類のアプリケーションがリクエストを行っているのかリモートホストが知ることは可能ですか?クロスオリジン要求はセキュリティ目的では許可されていませんか?どのように私はサーバー側のコードを使用してまったく同じ要求を行うことができますか?このコードをローカルまたはリモートでどこでも実行できますか?以下は、WeatherサイトからHTMLページコンテンツを取得するための簡単な例です。これはうまくいきます。しかし、私はJavaScriptコード内からこれを行うことはできませんか?意味がありません。
public static class WeatherManager
{
private static HtmlDocument document = new HtmlDocument();
public static MyWeather GetWeather()
{
try
{
var web = new HtmlWeb();
document = web.Load("http://www.weatheroffice.gc.ca/city/pages/on-143_metric_e.html");
}
catch (Exception ex)
{
throw new Exception("Weather is not loaded");
}
var mainContent = document.DocumentNode.SelectSingleNode("//*[@id='mainContent']");
var nownode = mainContent.SelectSingleNode("//section[1]/details/div/div");
var forecastnodes = mainContent.SelectNodes("//section[2]/details/table[1]/tr[2]/td");
// Do some processing....
}
}
しかし、私は角度から同様の要求をしようとする場合(またはいずれかの私はJS libに思う)
getWeatherForecast() {
const url = 'https://weather.gc.ca/city/pages/on-143_metric_e.html';
return this.$http.get(url);
}
私は私が知っているこの
のようなものを取得します。 .. CORS okですが、その目的がセキュリティ目的のために行われた場合、私はこれらのCORSリクエストをどうすればいいのでしょうか?たとえば、上記のサーバーサイドコードなどです。