目前登录的A站点是:www.domain-a.com
现在我想登录另外一个B站点:www.domain-b.com,其中B站的代码无法被修改。
系统使用前后端分离开发,后端使用的asp.net core webapi
目前,在后端已经拿到B站点的cookie了,通过 return redirect("www.domain-b.com")
进不到B站点的后台,系统仍然提示要登录;
原因是:
application / cookies 的值没有写入,经过测试,以下的值如果能写入,则可以正常进入到系统主页;
cookies:www.domain-b.com
access_token:xxxyyy
关健代码如下所示:
//准备跳转
CookieContainer cookies = new CookieContainer();
cookies.Add(baseAddress, new Cookie("jweToken", "xxxyyy"));
HttpClientHandler handler = new HttpClientHandler();
handler.CookieContainer = cookies;
HttpClient client = new HttpClient(handler);
HttpResponseMessage response = client.GetAsync(_indexpage).Result;
Uri uri = new Uri("https://wwww.domain-b.com");
IEnumerable<Cookie> responseCookies = cookies.GetCookies(uri).Cast<Cookie>();
return Redirect(_indexpage);
路过的朋友请指点一下,谢谢!
目前仍然没有找到答案
可以去看下单点登录的机制
有代码示例,或者相应的网址不?主要是B站的代码无法修改,否则这个问题也就解决了的。
不修改B站的代码,基于 cookie 实现不了,过不了浏览器这一关