【发布时间】:2021-04-30 07:27:33
【问题描述】:
我正在尝试向 api.postcodes.io/postcodes/:postcode/validate 发出请求,以检查我输入的邮政编码是否有效。如果我通过网站执行此操作,当我输入有效的邮政编码和状态:200 时,我会收到 200 响应和布尔结果设置为 true,当我输入随机数时,结果:false。但是,当尝试通过我的代码执行此操作时,我没有得到任何结果。可能是什么问题呢?我尝试使用 .json() 解析结果,但这只是给了我一个错误。
这是我的要求:
const requestURL = 'https://api.postcodes.io/postcodes/' + addedPostcode + '/validate';
try {
console.log("enters try");
const response = yield fetch(requestURL, {
method: 'GET',
});
if(response.status === 200){
console.log("enters 200");
yield put({type: 'SHOW_ALERT', payload: {alertType: 'success', alertMessage: 'POST CODE VALID'}});
const updatedUser = yield response;
console.log(updatedUser);
} else{
console.log("enters 400");
const description = 'POST CODE INVALID';
yield put({type: 'SHOW_MODAL', payload: {type:'error', description}});
return;
}
} catch (e) {
console.log(e);
}
解决方案:需要使用 .json() 解析响应。之前失败的原因是我的请求网址缺少“https://”部分。
【问题讨论】:
-
代码中您要验证的值在哪里?它已经是
requestURL的一部分了吗? -
我在新编辑中添加了它。
标签: javascript api