尝试对Azure上的IIS上托管的.NET Web Api执行Ajax
调用时遇到一个非常奇怪的
错误.
我已经通过加密获得了SSL证书,它已正确应用于网站.当我尝试执行ajax调用时,我得到:
网:: ERR_SPDY_PROTOCOL_ERROR
如果Fiddler开放,一切正常.随着Fiddler关闭,我们得到了错误.常规的旧HTTP工作正常.
对我来说,
解决方案是Chrome对Authorization标头的格式严格要求.
标头的格式是方案标记,重要的是在方案之后不包括冒号.我的旧样式代码的格式是Bearer:thetoken,它失败了.我将它改为Bearer thetoken,现在一切正常.
headers: {
'Authorization': 'Bearer ' + token
}