提取失败以发布到API
我的快递服务器上有一条路由:/ api / users / register。通过VIA邮递员传递数据时,我可以注册一个帐户。但是在前端反应方面,我得到了:类型错误:无法提取。这是代码
handleSubmit = (event) => {
event.preventDefault();
const isValid = this.validateForm();
console.log(isValid);
if(isValid) {
let user = {
"username" : this.state.username,
"email" : this.state.email,
"password" : this.state.password
}
var json = JSON.stringify(user);
console.log(user);
fetch('https://URL/api/user/register', {
method: 'POST',
body: json,
headers: {
'Content-Type' : 'application/json'
}
}).then(function() {
console.log('ok');
}).catch(function(err){
console.log(err);
});
}
}
它在客户端失败,我不确定为什么。我在其他地方使用POST方法,并且工作正常。我被困住了,一直待到最后一天。有什么想法吗?
编辑:我意识到我从URL上的Chrome浏览器中得到了ERR_CERT_COMMON_NAME_INVALID,但是现在我不确定如何解决此问题。
回答如下:您可能会遇到最新的Chrome处理SSL证书的方式发生的变化。我认为从Chrome 58开始,它们完全弃用了CN,因此,如果您使用的是自签名开发证书(或没有正确的SAN /主题备用名称的证书),则很可能会看到此错误。由于许多商业产品现在发现其代码在Chrome中被破坏,因此引起了很大的反响。
最好的解决方案是更新服务器证书。如果这不可行并且您正在Windows上运行,则在少数情况下,可以使用此注册表黑客作为临时解决方法:
[HKEY_LOCAL_MACHINE \ SOFTWARE \政策\谷歌\铬]“EnableCommonNameFallbackForLocalAnchors”= DWORD:00000001
希望有所帮助