2017-04-10 96 views
1

我在客戶端有一個後端和angularjs,它們將在不同的域上工作。 我成立了CORS如下:ServiceStack在登錄請求表單後不保存會話cookie

Plugins.Add(new CorsFeature(
       allowCredentials: true, 
       allowOriginWhitelist: new[]{"http://localhost:11104", "http://localhost:61923/"}, 
       allowedMethods: "GET, POST, PUT, DELETE, OPTIONS", 
       allowedHeaders: "Content-Type")); 

當我提出一個要求獲得Cookie,但他們不發送下面的查詢,因此未通過授權。

登錄請求:

$http({ 
       method: "POST", 
       url: "http://localhost:61923/auth/Credentials?format=json", 
       params: { "username": $scope.LoginParams.UserName, "password": $scope.LoginParams.Password } 
      }) 

enter image description here

下一個請求:

$http({ 
       method: "POST", 
       url: "http://localhost:61923/IsAdmin?format=json" 
      }) 

enter image description here

請幫助,我究竟做錯了什麼? (( 感謝

回答

3

您需要通過指定withCredentials包括在您的http請求的cookie,e.g:

$http({ 
    method: "POST", 
    url: "http://localhost:61923/auth/credentials", 
    params: { "username": $scope.LoginParams.UserName, "password": $scope.LoginParams.Password }, 
    withCredentials: true 
})