当前位置: 首页 > 面试题库 >

提出Ajax请求oauth2访问令牌时发生CORS问题

柳胜
2023-03-14
问题内容

我正在从客户端向Google oauth 2 API
'https://accounts.google.com/o/oauth2/auth?redirect_uri=http://blah.com&response_type=token&client_id....'进行ajax调用以获取访问令牌,但出现以下错误:

对预检请求的响应未通过访问控制检查:在所请求的资源上不存在“ Access-Control-Allow-Origin”标头。因此,不允许访问来源“
http://blah-blah.com ”

我希望该调用为ajax,以便通过urlwindow.location.href换句话说,在进行调用时不会打扰用户,我如何获得访问令牌以使整个页面无法加载,并且可以解决上述问题错误???


问题答案:

OAuth2身份验证端点在设计上不支持AJAX。这是身份验证系统的入口,因此您必须通过重定向到达那里。身份验证的结果再次是重定向到您提供的URL,因此AJAX在这里没有多大意义。



 类似资料:
  • 客户端通过使用按附录B“application/x-www-form-urlencoded”格式在HTTP请求实体正文中发送下列UTF-8字符编码的参数向令牌端点发起请求: grant_type 必需的。值必须设置为“client_credentials”。 scope 可选的。如3.3节所述的访问请求的范围。 客户端必须如3.2.1所述与授权服务器进行身份验证。 例如,客户端使用传输层安全发起如

  • 客户端通过使用按附录B“application/x-www-form-urlencoded”格式在HTTP请求实体正文中发送下列UTF-8字符编码的参数向令牌端点发起请求: grant_type 必需的。值必须设置为“password”。 username 必需的。资源所有者的用户名。 password 必需的。资源所有者的密码。 scope 可选的。如3.3节所述的访问请求的范围。 如果客户端类

  • 客户端通过使用按附录B“application/x-www-form-urlencoded”格式在HTTP请求实体正文中发送下列UTF-8字符编码的参数向令牌端点发起请求: grant_type 必需的。值必须被设置为“authorization_code”。 code 从授权服务器收到的授权码。 redirect_uri 必需的,若“redirect_uri”参数如4.1.1节所述包含在授权请求

  • 问题内容: 是否可以使用每个请求的client_credentials或密码授予类型来生成多个有效的访问令牌? 使用以上授权类型生成令牌仅在每个请求当前令牌过期时才提供一个新令牌。 我可以使用密码授予类型来生成刷新令牌,然后生成多个访问令牌,但是这样做会使以前的所有访问令牌无效。 知道如何更改以允许对/ oauth / token端点的每个请求生成访问令牌,并确保以前的所有令牌都不会无效吗? 以下

  • 问题内容: 是否可以使用client_credentials或每个请求的密码授予类型来生成多个有效的访问令牌? 使用以上授权类型生成令牌仅在每个请求当前令牌过期时才提供一个新令牌。 我可以使用密码授予类型来生成刷新令牌,然后生成多个访问令牌,但是这样做会使以前的所有访问令牌无效。 知道如何更改以允许对/ oauth / token端点的每个请求生成访问令牌,并确保以前的所有令牌都不会无效吗? 以下

  • 我有一些问题,当我想要获得“访问令牌”,我使用Spring Security在我的项目 WebSecurity配置 我在内存中设置了user以便在该类中进行身份验证,并且我使用的是内存令牌 我正确地发送了grant_type,client_id,client_secret,username和password,但没有在API上响应“访问令牌