如何处理ip中的ip或域错误

时间:2019-04-01 05:58:31

标签: javascript reactjs electron

使用javascript中的访存请求中的ip或域错误时,有什么解决方案吗?如果IP或域提供错误,则处理停止请求。

var ip_or_domain = 192.168.1.1

fetch(ip_or_domain+'/something-get-api')
  .then(function(response) {
    return response.json();
  })
  .then(function(myJson) {
    console.log(JSON.stringify(myJson));
  });

3 个答案:

答案 0 :(得分:0)

如果有错误,您可以catch进行操作:

fetch(ip_or_domain+'/something-get-api')
  .then(function(response) {
    return response.json();
  })
  .then(function(myJson) {
    console.log(JSON.stringify(myJson));
  })
  .catch(function(error) {
    console.log(error);
  });

答案 1 :(得分:0)

除非您有某种方法可以验证值,否则,知道请求是否有效的另一种方法是实际发出请求

您需要自己实施错误处理。首先检查response.ok,如果错误则抛出错误,然后使用catch()进行错误处理。

您还可以检查response.status以获得更详细的错误

fetch('flowers.jpg').then(function(response) {
  if(response.ok) {
   return response.json();
  }
  throw new Error('Network response was not ok.');
}).then(function(myBlob) { 
   console.log(JSON.stringify(myJson));
}).catch(function(error) {
  console.log('There has been a problem with your fetch operation: ', error.message);
});

答案 2 :(得分:0)

var ip_wishlist = ['192.168.1.1', '192.168.1.2']; 
// where you can keep the ip_wishlist dynamically in a global array.

if(ip_wishlist.indexOf(ip_or_domain) !== -1){

 fetch(ip_or_domain+'/something-get-api')
 .then(function(response) {
  return response.json();
 })
.then(function(myJson) {
 console.log(JSON.stringify(myJson));
 })
.catch(function(error) {
 console.log(error);
 });

}