【发布时间】:2020-05-19 05:17:49
【问题描述】:
我遇到了一种情况,我必须在 Angular 应用中调用 OKTA url“{}/api/v1/sessions/me”。 我没有使用任何库,只是进行简单的 get 调用。 我正在使用这样的代码
const headers = new HttpHeaders().set('Content-Type', 'application/json; charset=utf-8');
this.http
.get<SessionInfo[]>(`https://xxx.xxx.com/api/v1/sessions/me`, { headers })
.subscribe((data: SessionInfo[]) => {
alert(data);
});
SessionInfo 看起来像这样
export class SessionInfo {
userId: string;
login: string;
}
当我在浏览器中运行 url 时,我得到了正确的响应。
在此之前我遇到了 CORS 问题,但我在 okta 仪表板中修复了它,并在 CORS 列表中添加了 localhost:8080。之后我得到 404。
有什么想法吗?
更新 https://devforum.okta.com/t/get-current-session-api-not-returning-session/3758 这里的讨论让我相信它与 cookie 有关。我的目标是获取当前用户的 ID,但看起来我们无法从另一个 url 读取 cookie。
更新 2 我制作了一个简单的 html 页面并使用简单的 nodejs 服务器托管它,我确实得到了响应。从角度做同样的事情我得到 404
【问题讨论】: