When you try to get jsonfrom another domain, there are security problems, so the default behavior does not allow this, but you can use it jsonpas work.
Below is a modified version of your GET request, including jsonp. The appendix indicates the type of the return type jsonpand the name of the callback function.
var callback = 'c'+Math.floor((Math.random()*100000000)+1);
$.ajax({
type: 'GET',
url: 'http://www.someapi.com/?i='+id,
jsonpCallback: callback,
contentType: 'application/json',
dataType: 'jsonp',
success: function(data) {
this.setState({data: data});
}.bind(this),
error: function(e) {
console.log('error', e);
}
});