2015-09-15 19 views
5

Tôi có một thử nghiệm Owin Server:Microsoft OWIN Kiểm tra máy chủ thiết lập cookie

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); 
} 

Tôi muốn thiết lập các tài sản khác trên cookie rằng, giống như HttpOnly, SecureDomain.

Điều này có khả thi không?

Trả lời

1

Cookie là tiêu đề có danh sách các mục có giá trị khóa. Trong mã của bạn, mã sẽ trông giống như sau:

.Add("Cookie", "cookie1=value1;cookie2=value2") 
+0

cách trả lời câu hỏi: 'Tôi muốn đặt các thuộc tính khác trên cookie đó, như HttpOnly, Secure and Domain' –

1

Thuộc tính là một phần của giá trị cookie, được phân cách bằng dấu chấm phẩy, ví dụ: "Cookie = cookievalue; path = /; HttpOnly"

+0

Tôi ước tôi có thể kiểm tra ngay lập tức xác nhận, nhưng tôi đã chuyển sang dự án có chứa điều này - tuy nhiên tôi sẽ cố gắng ngay khi có thể –

+0

Điều thú vị - Tôi vừa mới bắt đầu dự án của riêng mình mà tôi mong đợi có thể kiểm tra điều này. Vì vậy, sẽ cung cấp cho nó một đi tại một số điểm –

Các vấn đề liên quan