StackMob バックエンドを使用して PhoneGap HTML5 アプリを構築したいと考えています。このトピックに関する書籍、ビデオ、およびチュートリアルが不足しているようです。
具体的には、Require.js と Backbone.js を使用せずに Phonegap + StackMob アプリを構築するにはどうすればよいですか?
StackMob での phoneGap の使用は、Backbone.js および Require.js の使用とは無関係です。StackMob SDK は、モデルとコレクションを管理するために Backbone.js を使用して構築されています。
したがって、Backbone.js を使用せずにアプリを構築する場合は、StackMob に対してベア AJAX 呼び出しを行うことができます。これがその方法を示す JSFiddle です。
http://jsfiddle.net/ericktai/mr925/
/*
We want to prepare the Request headers we're going to send to StackMob. It should look like:
{
'Accept': application/vnd.stackmob+json; version=0',
'X-StackMob-API-Key-dc0e228a-ccd3-4799-acd5-819f6c074ace': 1,
'Range': 'objects=0-9' //this is optional, but I did it here to show pagination and extra header fields
}
You can actually have the public key in the header as:
'X-StackMob-API-Key': dc0e228a-ccd3-4799-acd5-819f6c074ace
OR
'X-StackMob-API-Key-dc0e228a-ccd3-4799-acd5-819f6c074ace': 1
The first is our original format. The reason why I chose the latter is because of this specific example. I'm making cross domain requests jsfiddle.net to api.stackmob.com, which the browser doesn't allow UNLESS we use CORS (cross origin resource sharing). StackMob servers support CORS, but it needs the latter header format to do so. (it was introduced later). iOS and Android SDKs use the first format.
Node.js should be able to use the first format because it doesn't restrict cross domain calls.
The "1" value in the latter format is arbitrary. IE just doesn't allow the value of a header to be empty, so we filled it with "1".
*/
var publicKeyHeader = 'X-StackMob-API-Key-dc0e228a-ccd3-4799-acd5-819f6c074ace';
var requestHeaders = {};
requestHeaders['Accept'] = 'application/vnd.stackmob+json; version=0';
requestHeaders[publicKeyHeader] = 1;
requestHeaders['Range'] = 'objects=0-9'; //set pagination to first 10
$.ajax({
url: 'https://api.stackmob.com/item',
headers: requestHeaders, //set the headers
type: 'GET',
success: function(data, textStatus, xhr) {
console.debug(data);
},
error: function(xhr, textStatus, error) {
console.debug(error);
}
});
phoneGap については、次のドキュメントを参照してください。
https://developer.stackmob.com/js-sdk/using-the-js-sdk-with-phonegap-guide
Adobe phoneGap ビルドを正常に使用しました。
ところで、私は StackMob のプラットフォーム エバンジェリストです
stackmob 開発者のウェブサイト: https://developer.stackmob.com/が最適なリソースだと思います。