fetch()在Firefox中使用SSL客户端身份验证失败
fetch() fails in Firefox with SSL client authentication
我有一个使用SSL客户端身份验证的web服务器。该服务器上的网页使用fetch()
API发出同源GET
请求。
在Chrome中,客户端证书在SSL握手中发送,如预期的那样,导致200"ok"响应。在Firefox中,不发送证书,导致403 "forbidden"响应。
在Firefox中,如果我从使用fetch()
切换到XMLHttpRequest
,它可以工作。如果我直接从Firefox的URL栏加载相同的URL,它可以工作。这个问题似乎仅限于Firefox的fetch()
。
有人见过这个吗?是否有任何方法可以使fetch()
在Firefox中与SSL客户端身份验证很好地配合,或者我是否需要在任何地方切换到使用XMLHttpRequest
?谢谢。
我刚刚解决了自己的问题。这就是失败的地方:
fetch(someUrl)
fetch(someUrl, { credentials: 'include' })
显然Chrome (v54)和Firefox (v45)在这里有不同的行为
相关文章:
- 客户端服务器REST API captcha实现
- 使用谷歌应用程序脚本将服务器端数据表返回到客户端
- 如何使用Socket.io将命令从客户端发送到服务器
- 如何轻松地将服务器端变量从Java代码转移到客户端代码
- Meteor方法在客户端返回null,在客户端运行的相同方法返回正确的值
- 从客户端获取修改后的对象,并将其与服务器上的原始对象组合
- 如何将我的javascript库公开给其他客户端使用
- 是否可以使用JavaScript/AAJAX在客户端创建一个文件
- 如何使用Javascript客户端对象模型检索Sharepoint 2010列表项权限
- 返回/从Twit's客户端.get
- 将客户端特定的日期格式返回到服务器MVC4
- MobileFirst:在客户端运行计时器作业-最佳选项
- 标签客户端的设置值
- 我的客户端选项是什么
- Node.js上的WebSocket,并在所有连接的客户端之间共享消息
- 使用javascript在客户端上使用Web服务
- C/SSL/JQuery.ajax() 客户端 - >服务器连接重置,但发送了 1 个字节
- Angular JS SSL客户端认证
- fetch()在Firefox中使用SSL客户端身份验证失败
- 在node.js上的客户端ssl授权