別の質問に対するこの回答の最初の部分では、既存の MVC サイトがデータを公開する機能 (たとえば、データを要求する Winforms アプリ) を非常に迅速に追加する方法を説明しています。 WCF/Web API に変換し、追加のレイヤーを追加する必要があります - 私たちのプロジェクトはかなり小さく、基本的なものです):
public JsonResult GetCategoryList()
{
var list = //return list
return Json(list, JsonRequestBehavior.AllowGet);
}
したがって、上記を迅速かつ簡単なソリューションとしてテストしましたが、ストリームで MVC アプリのログイン用の html ソースを取得するため、ほとんど機能していることは明らかです。
実際、AllowAnonymous アノテーションを追加すると、目的の Json ストリームを取得できます。
ただし、匿名を許可したくないので、ある程度の保護が必要です。追加しようとしました:
Dim nc As New NetworkCredential("username", "password")
request.Credentials = nc
発砲する直前request.GetResponse
ですが、それは機能していません(これは完全に無知かもしれませんが、試してみる価値があるように思えました)。機能していないというのは、ストリームでログイン ページの html ソースを取得することに戻るということです。
では、winforms アプリがデータの要求で何らかの認証 (これは機能します) をインクルードできるようにするにはどうすればよいでしょうか? 私が言うように、データの取得は機能しています (AllowAnonymous によって証明されています)。