摘要:我没有找到通过Ember Data发送POST请求的任何选项,非常感谢您提供的复杂帮助。 documentation表示应该使用Create函数,但在任何地方都没有示例。你不必在这里阅读全部细节,这是我的主要问题。
背景:我希望一旦用户使用Facebook登录进行登录,他的signedRequest将被发送到RESTful服务器,它将发回一个JSON,提供有关他的更多信息来自我的数据库。
我的架构:根据我的研究,我发现signedRequest是首选方式(与accessToken相比),以确保安全和快速,因为它不依赖于任何进一步的Facebook服务器检查和因此减少'IO'。它只能在AppId和AppSecret上进行解码。安全性和敏捷性对我来说很重要,因为RESTful架构中每次通信都应该进行身份验证(我错了吗?)。
我成功了什么:我设法让facebook登录和signedRequest的解码逻辑。 (如果这是第一次登录,服务器上的逻辑会将他插入数据库)。
问题:首先我向使用signedRequest编写的Web API发出GET请求,它运行良好,直到我已经将长字符串连接起来然后 得到了“NetworkError:400 Bad Request”。
App.UserController = Ember.ObjectController.extend({
FBSignedRequest: "non",
actions: {
login: function(){
this.set("FBSignedRequest", FBApp.FBUser.signedRequest);
this.store.find('user', this.get("FBSignedRequest")); //want to make it POST
}
}
});
GET请求类似于:
http://localhost:54441/api/users/iAMveRyLongStrINgWHichRepreSEnTsASignEDReQueSt
然后我想,这是因为signedRequest的复杂性, 所以第二种方式是使它成为POST请求。但是,令人惊讶的是,没有任何关于在互联网上发出POST请求的信息。我在这里错过了什么吗?我只发现了有效负载和序列化,但我不确定这些是否有必要。
你能帮我吗?