gpt4 book ai didi

javascript - 回调时 stackmob 错误

转载 作者:行者123 更新时间:2023-11-28 16:06:11 26 4
gpt4 key购买 nike

我使用 stackmob 已经几天了,它仍然是新的,网络上没有太多信息。我遇到了这个问题:我不会获取我的 stackmobe“db”中所有商店名称的列表,该方案称为商店,这是我正在使用的代码:

var Store = StackMob.Model.extend({
schemaName: 'store'
});

var stores = new Store();
stores.fetch({
success: function(collection) {
//after we've gotten all the Todo items from StackMob, let's see what we have!
console.debug(collection.toJSON());
alert(collection.toJSON());
},
error: function(collection, response){
alert(collection.toJSON());
}
});

我在 chrome 日志中收到此错误:

OPTIONS http://api.stackmob.com/store 400 (Bad Request) 
XMLHttpRequest cannot load http://api.stackmob.com/store. Origin http://127.0.0.1:4567 is not allowed by Access-Control-Allow-Origin.

如有任何帮助,我们将不胜感激!

最佳答案

请问您运行的环境是什么(chrome、firefix、safari、opera、phonegap)?默认情况下,JS SDK 配置为对相对路径进行 AJAX 调用。例如“/store” 看起来不知何故它被配置为直接点击“api.stackmob.com”,这只发生在这些情况下:

  • JS SDK 检测到您正在使用 PhoneGap
  • 您已指定通过 init 直接访问 api.stackmob.com 的 URL:

    StackMob.init({ ... apiURL: ' http://api.stackmob.com/ '})

我问自己的第一个问题是,当你看起来像是在 Python 服务器上运行时,它是如何调用 api.stackmob.com 的:(我认为就是这样,因为我看到的是 127.0.0.1: 4567 在你的原始帖子中)

Dennis Rongo 上面指出的另一件事是你的 Python 版本。我们用 2.7 进行了测试,但听起来他注意到了 3.3 的问题。但令人意外的是,您从 127.0.0.1:4567 访问 api.stackmob.com。您的 init 中是否设置了 apiURL: '...' ?如果是这样,我会尝试删除它。

设置 apiURL 将使 SDK 直接调用 api.stackmob.com (api.stackmob.com/store),浏览器的行为就像任何常规 AJAX 调用一样,如果跨域,则浏览器会阻止它,从而给出您看到的错误。

好吧,请告诉我!我们绝对希望让您继续前进!

埃里克

PS,我认为您还想开设多家商店。 StackMob.Model仅代表一个商店。您需要 StackMob.Collection。

例如

var Store = StackMob.Model.extend({ schemaName: 'store' });
var Stores = StackMob.Collection.extend({ model: Store });

var stores = new Stores();
stores.fetch({
success: function(results) {
console.log(results.toJSON()); //should print out array of JSON objects representing your store items.
}
});

更多信息: http://developer.stackmob.com/tutorials/js/Query-an-Object

关于javascript - 回调时 stackmob 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14838265/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com