{"id":1475,"date":"2022-08-30T15:16:50","date_gmt":"2022-08-30T15:16:50","guid":{"rendered":"https:\/\/unknownerror.org\/index.php\/2013\/11\/23\/ember-js-ember-data-and-cross-domain-ajax-requests-collection-of-common-programming-errors\/"},"modified":"2022-08-30T15:16:50","modified_gmt":"2022-08-30T15:16:50","slug":"ember-js-ember-data-and-cross-domain-ajax-requests-collection-of-common-programming-errors","status":"publish","type":"post","link":"https:\/\/unknownerror.org\/index.php\/2022\/08\/30\/ember-js-ember-data-and-cross-domain-ajax-requests-collection-of-common-programming-errors\/","title":{"rendered":"Ember.js ember-data and cross-domain ajax requests-Collection of common programming errors"},"content":{"rendered":"<p>folks! Any examples of using ember-data to store data getted from remote server with cross-domain ajax request? Now I have this, but&#8230;<\/p>\n<pre><code>TravelClient.Tour = Ember.Object.extend({\n});\n\nTravelClient.Tour.reopenClass({\n  allTours: [],\n  find: function(){\n    $.ajax({\n      url: 'http:\/\/someIP:somePORT\/tours.json',\n      dataType: 'jsonp',\n      context: this,\n      success: function(data){\n        data.forEach(function(tour){\n          this.allTours.addObject(TravelClient.Tour.create(tour))\n        }, this)\n      }\n    })\n    return this.allTours;\n  }\n});\n<\/code><\/pre>\n<p><strong>UPDATE:<\/strong> Now i&#8217;m doing it in this way:<\/p>\n<pre><code>TravelClient.Tour.reopenClass({\n  allTours: [],\n  find: function(){\n    $.ajax({\n      url: 'http:\/\/someIP:somePORT\/tours.json',\n      dataType: 'jsonp',\n      context: this,\n      success: function(response){\n        response.data.forEach(function(tour){\n          this.allTours.addObject(TravelClient.Tour.create(tour))\n        }, this)\n      }\n    })\n    return this.allTours;\n  }\n});\n<\/code><\/pre>\n<p>But get this error:<\/p>\n<pre><code>Uncaught TypeError: Cannot call method 'forEach' of undefined \n<\/code><\/pre>\n<p><strong>SNAPSHOT:<\/strong><\/p>\n<p>with this:<\/p>\n<pre><code>$.ajax({\n  dataType: 'jsonp',\n  url:\"http:\/\/192.168.1.39:3000\/tours.json\",\n  success:function(response){\n    return response.data;\n  }\n});\n<\/code><\/pre>\n<p>I get this:<\/p>\n<pre><code>Object\nabort: function (e){var t=e||S;return r&amp;&amp;r.abort(t),N(0,t),this}\nalways: function (){return i.done(arguments).fail(arguments),this}\ncomplete: function (){if(a){var t=a.length;(function r(t){y.each(t,function(t,n){var i=y.type(n);i===\"function\"?(!e.unique||!c.has(n))&amp;&amp;a.push(n):n&amp;&amp;n.length&amp;&amp;i!==\"string\"&amp;&amp;r(n)})})(arguments),i?o=a.length:n&amp;&amp;(s=t,l(n))}return this}\ndone: function (){if(a){var t=a.length;(function r(t){y.each(t,function(t,n){var i=y.type(n);i===\"function\"?(!e.unique||!c.has(n))&amp;&amp;a.push(n):n&amp;&amp;n.length&amp;&amp;i!==\"string\"&amp;&amp;r(n)})})(arguments),i?o=a.length:n&amp;&amp;(s=t,l(n))}return this}\nerror: function (){if(a){var t=a.length;(function r(t){y.each(t,function(t,n){var i=y.type(n);i===\"function\"?(!e.unique||!c.has(n))&amp;&amp;a.push(n):n&amp;&amp;n.length&amp;&amp;i!==\"string\"&amp;&amp;r(n)})})(arguments),i?o=a.length:n&amp;&amp;(s=t,l(n))}return this}\nfail: function (){if(a){var t=a.length;(function r(t){y.each(t,function(t,n){var i=y.type(n);i===\"function\"?(!e.unique||!c.has(n))&amp;&amp;a.push(n):n&amp;&amp;n.length&amp;&amp;i!==\"string\"&amp;&amp;r(n)})})(arguments),i?o=a.length:n&amp;&amp;(s=t,l(n))}return this}\ngetAllResponseHeaders: function (){return E===2?s:null}\ngetResponseHeader: function (e){var t;if(E===2){if(!o){o={};while(t=wn.exec(s))o[t[1].toLowerCase()]=t[2]}t=o[e.toLowerCase()]}return t==null?null:t}\noverrideMimeType: function (e){return E||(c.mimeType=e),this}\npipe: function (){var e=arguments;return y.Deferred(function(n){y.each(t,function(t,s){var o=s[0],u=y.isFunction(e[t])&amp;&amp;e[t];i[s[1]](function(){var e=u&amp;&amp;u.apply(this,arguments);e&amp;&amp;y.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[o+\"With\"](this===r?n.promise():this,u?[e]:arguments)})}),e=null}).promise()}\nprogress: function (){if(a){var t=a.length;(function r(t){y.each(t,function(t,n){var i=y.type(n);i===\"function\"?(!e.unique||!c.has(n))&amp;&amp;a.push(n):n&amp;&amp;n.length&amp;&amp;i!==\"string\"&amp;&amp;r(n)})})(arguments),i?o=a.length:n&amp;&amp;(s=t,l(n))}return this}\npromise: function (e){return e!=null?y.extend(e,r):r}\nreadyState: 4\nsetRequestHeader: function (e,t){var n=e.toLowerCase();return E||(e=b[n]=b[n]||e,g[e]=t),this}\nstate: function (){return n}\nstatus: 200\nstatusCode: function (e){var t;if(e)if(E<\/code><\/pre>\n<p id=\"rop\"><small>Originally posted 2013-11-23 07:54:28. <\/small><\/p>","protected":false},"excerpt":{"rendered":"<p>folks! Any examples of using ember-data to store data getted from remote server with cross-domain ajax request? Now I have this, but&#8230; TravelClient.Tour = Ember.Object.extend({ }); TravelClient.Tour.reopenClass({ allTours: [], find: function(){ $.ajax({ url: &#8216;http:\/\/someIP:somePORT\/tours.json&#8217;, dataType: &#8216;jsonp&#8217;, context: this, success: function(data){ data.forEach(function(tour){ this.allTours.addObject(TravelClient.Tour.create(tour)) }, this) } }) return this.allTours; } }); UPDATE: Now i&#8217;m doing it [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1475","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/posts\/1475","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/comments?post=1475"}],"version-history":[{"count":0,"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/posts\/1475\/revisions"}],"wp:attachment":[{"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/media?parent=1475"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/categories?post=1475"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/tags?post=1475"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}