首页 文章

重定向的URL用#提供GET参数(而不是?)

提问于
浏览
1

根据Dropbox API文档,GET to https://www.dropbox.com/1/oauth2/authorize将呈现Dropbox身份验证网站,并在进行身份验证时将客户端重定向到指定的重定向URI,并将访问令牌作为GET参数 . 但是,URL被重定向以提供其GET参数#(而不是?) .

例如,如果我执行https://www.dropbox.com/1/oauth2/authorize?response_type=token&client_id=foo&redirect_uri=https://www.httpsnow.org/,我将得到https://www.httpsnow.org/#access_token=foo&token_type=bearer&uid=bar(注意 # 符号的存在以及查询字符串开头缺少 ? 符号) .

有任何想法吗?

1 回答

  • 2

    您正在使用OAuth 2 "token flow"( response_type=token ) . 令牌流主要是为移动和基于JavaScript的应用程序设计的 . 正如the documentation所说:

    令牌流这些参数在URL片段中传递(在URL中的#之后):

    听起来你想要使用"code flow"( response_type=code ):

    代码流这些参数在查询字符串中传递(在URL中的?之后):

相关问题