HttpContext.Current.Response
にクッキーを追加するさまざまな方法を試みました。ブラウザには、追加しているCookieが表示されません。助けてください!CookieをHttpContextレスポンスに設定する
はここ(ステートレス)RESTに基づいて心WebAPIの中に保管してください私のAPIコントローラ
public IHttpActionResult Get(string username, string password)
{
HttpContext.Current.Response.AddHeader("Access-Control-Allow-Origin", "*");
HttpContext.Current.Response.AddHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
HttpContext.Current.Response.AddHeader("Access-Control-Allow-Methods", "*");
//This does not work
HttpCookie cookie = new HttpCookie("ACA-Cookie", "This better work!");
cookie.Expires = DateTime.Now.AddDays(2);
cookie.Domain = Request.RequestUri.Host;
cookie.Path = "/";
HttpContext.Current.Response.SetCookie(cookie);
//This does not work
var cookie = new HttpCookie("MyCookie", DateTime.Now.ToLongTimeString());
HttpContext.Current.Response.Cookies.Add(cookie);
return Ok(HttpStatusCode.OK);
}
これは大変助かります! ログインのためだけにmvcコントローラを使用して、残りのリクエストに対してCookieを設定することをお勧めしますか? –
私の会社では、Rest and Basic Authenticationで.NetのWeb APIを開発しました。クレデンシャルはHTTPリクエストヘッダーで渡されます。 – derloopkat
WebAPIコントローラに要求ヘッダーで資格情報を渡すこともできるとderloopkatに同意します。ただし、RESTを使用すると、すべてのリクエストで認証を要求することが一般的です(ステートレスにする)。 – Luke