2016-04-15 11 views
4

Parse Javascript SDKとParse-Serverを使用してnode.js expressアプリがあります。Parse-ServerでエクスプレスアプリでParse Javascript SDKを使用する

guideに従ってすべてを設定しましたが、JS SDKが機能しません。

私は{error:unauthorized}を取得しています。 REST APIを使用してサーバーにアクセスできますが、JS SDKを使用してアプリ内からはアクセスできません。

var User = Parse.Object.extend('_User'); 
var query = new Parse.Query(User); 
query.useMasterKey = true; 

query.find().then(function(results) { 
    console.log(results); 
}, 
function(error) { 
    console.log(JSON.stringify(error)); 
}); 

このカールがないこと、同じデータを返す必要があります(右?):

curl -X GET \ 
-H "X-Parse-Application-Id: myAppId" \ 
-H "X-Parse-Master-Key: myMasterKey" \ 
http://localhost:1337/parse/classes/_User 

ああ

私はあなたがそうパース-Serverを使用したすべての操作のための useMasterKey = trueを指定する必要があること読みます、 これはそうではありません。

私は、デフォルトのクラウドコード機能を実行しようとすると同じエラーメッセージ:

Parse.Cloud.run('hello').then(function(response) { 
    console.log(response); 
}, 
function(error) { 
    console.log(JSON.stringify(error)); 
}); 

役立つかもしれない任意のアイデア?ありがとう。

+0

私は同じことをしようとしています。 Parse Serverが "baseURL/parse"にあるurlにアクセスしようとすると '{error:unauthorized}'が表示されます。また、Parse Serverを設定するExpressアプリ内でjavascript SDKを使用する場合、Cloud Code関数は常にエラーを返します。誰かがParse ServerとParse JS SDKをExpressアプリケーションから実行できましたか? –

+0

私のソリューションを掲載しました。あなたの投稿をありがとう。私は 'Parse.initialize'行を一切省略しました(サーバーがそれを行うため)、私はクエリやクラウドコードでマスターキーを使う必要はありません。すべてがうまくいく。 – MayNotBe

答えて

1

私の問題は経験不足だった承認されました。

私はbody-parserを使用していますが、このアプリは、そのモジュールのrawjsontext、およびurlencodedミドルウェアの機能を使用するように設定していました。

私はurlencodedオプションが必要でした。私は他のものを削除し、JS SDKは正常に動作し始めました。何とかして、他の機能がSDKを妨害していました。

2

ありがとうございました!私のためにそれをやった

は私のエクスプレスのアプリ、これらの行の後

var Parse = require('parse/node').Parse; 
Parse.initialize('app_id', 'js_key','master_key'); 
Parse.serverURL = 'serverURL'; 
Parse.Cloud.useMasterKey(); 

に次の行だった、クラウドコードの使用を必要とするか、または使用状況を解析し、コールのいずれかの種類が

関連する問題