我只是想弄清楚这一点。
我正在使用 oauth2 再次向谷歌日历 v3 API 验证我的客户端应用程序(即浏览器应用程序)。到目前为止,我使用带有 的字符串参数access_token
来调用端点。
切换到标头身份验证后,我注意到浏览器需要两个 xhr 请求来调用端点,其中第一个是 OPTIONS,第二个是实际的 GET 请求。这是预期的行为,对吗?
当然,在某些情况下,这会降低用户体验。是否可以只有一个带有标头身份验证的 xhr (GET) 请求?
我只是想弄清楚这一点。
我正在使用 oauth2 再次向谷歌日历 v3 API 验证我的客户端应用程序(即浏览器应用程序)。到目前为止,我使用带有 的字符串参数access_token
来调用端点。
切换到标头身份验证后,我注意到浏览器需要两个 xhr 请求来调用端点,其中第一个是 OPTIONS,第二个是实际的 GET 请求。这是预期的行为,对吗?
当然,在某些情况下,这会降低用户体验。是否可以只有一个带有标头身份验证的 xhr (GET) 请求?
否。当设置自定义标头(在本例中为身份验证标头)时,会触发预检请求。(规格,Remy Sharp 的博文)
如果要保存额外的往返行程,请使用access_token
参数调用端点。
如果您仍然看到OPTION
请求,请检查您的 js lib/framework 是否设置了自定义标头。例如,jQuery 中有一个(早已不复存在的)错误。