Microsoft OWIN测试服务器设置cookie

Cal*_*ton 5 c# dotnet-httpclient owin

我有一个Owin测试服务器:

using (var testServer = TestServer.Create<TestPipelineConfiguration>())
using (var client = new HttpClient(testServer.Handler))
{
    client
        .DefaultRequestHeaders
        .Add("Cookie", $"{AspNetCookies}=HeyThere;");

    client.BaseAddress = new Uri("https://testserver/");

    var message = client
                    .PostAsync("print", new StringContent(
                                                jsonProvider.SerialiseObject(new
                                                {
                                                    Url = "https://some/url"
                                                }),
                                                Encoding.UTF8, "application/json"))
                    .Result;

    //var message = client.GetAsync("test").Result;

    message
        .StatusCode
        .ShouldBeEquivalentTo(HttpStatusCode.OK);
}
Run Code Online (Sandbox Code Playgroud)

我想在那个cookie设置的其他属性,如HttpOnly,SecureDomain.

这可能吗?

Grz*_*ski 1

Cookie 是一个带有键值项列表的标头。在您的代码中它将如下所示:

.Add("Cookie", "cookie1=value1;cookie2=value2")
Run Code Online (Sandbox Code Playgroud)