我将HTTP版本设置为2.0,但是App Service的行为却并非如此。
我正在使用https://tools.keycdn.com/http2-test进行测试,并显示function onBlurValidator (e, form){
const field = e.target.name;
const value = e.target.value;
let errors = form.state.errors;
let validFields = form.state.validFields;
let invalid = form.state.invalid;
if (field === 'password2') {
clean_password2(value, errors, validFields, invalid, form);
}
if (field === 'username') {
clean_username(value, errors, validFields, invalid, form);
}
}
function clean_password2(value, errors, validFields, invalid, form){
// Cheack field username
const password2 = "password2";
const password1 = "password1";
if (value !== form.state.password1){
//console.log('password no conciden');
errors[password2] = 'password no conciden';
errors[password1] = 'password no conciden';
validFields[password2] = '';
invalid = true;
}else if (value === form.state.password1){
validFields[password2] = true;
validFields[password1] = true;
errors[password2] = "";
errors[password1] = "";
invalid = false;
}
form.setState({validFields, errors, invalid});
}
function clean_username (value, errors, validFields, invalid, form){
// Cheack field username
const username = "username";
form.props.ifExistsField("UsersModel", username, value).then((response) => {
if(response.data[username] !== true){
errors[username] = response.data[username];
validFields[username] = '';
invalid = true;
} else {
validFields[username] = response.data[username];
errors[username] = "";
invalid = false;
}
form.setState({validFields, errors, invalid});
});
}
export {onBlurValidator};
Chrome浏览器也使用HTTP / 1.1。
这似乎正在影响“应用服务计划”中的所有应用。我目前有2个,并且都没有HTTP / 2。我添加了第三个,它也不支持HTTP / 2。我在两个应用程序上都设置了HTTPS,并且我的请求正在使用HTTPS。
我尝试了各种更改设置和重新启动的组合。我尝试停止两个应用程序,然后重新启动它们。
答案 0 :(得分:0)
我在自己的网站上进行了测试,并收到与您相同的错误消息。但是,在等待服务器分钟后,它将变为HTTP / 2。
经过测试,请转到App Service的“应用程序设置”,并将HTTP版本设置为2.0。这可能是由于响应延迟所致。
如扎希德(Zahid)所说,如果您想确保这一点,则可以参考此blog来检查http20Enable
的服饰价值是否为true
。
答案 1 :(得分:0)
我联系了Azure支持,他们发现托管我的应用程序服务的服务器出现问题。他们能够解决此问题,并且现在可以正常工作。