ログインを処理する Parse Cloud Code サーバー側関数を定義しようとすると、呼び出そうとすると 400 Bad Request が返されます。解析ログを見ると、「Failed with: ReferenceError: user is not defined」というエラーが記録されています。しかし、ユーザーは間違いなく定義されています!
以下は、LogIn のクラウド コードの定義です。
Parse.Cloud.define("LogIn", function(request, response)
{
user.logIn(request.params.username, request.params.password,
{
success: function(user)
{
response.success(
{
"success": "Log in successful."
});
},
error: function(user, error)
{
// We must respond with a success in order to access the
// result of the request inside Unity.
response.success(
{
"error": "Log in failed.",
"code": error.code,
"message": error.message
});
}
});
});
Unity から、LogIn coud コード関数に対して次の呼び出しを行います。
ParseCloud.CallFunctionAsync<Dictionary<string, object>> ("LogIn", userInfo).ContinueWith (t =>
{
etc.....
}
ユーザーsashas123とstudent123を使用してUnityから上記を呼び出すと、サーバー側の解析ログに次のエラーが記録されます。
E2014-09-26T17:06:18.001Z] v8: クラウド関数 LogIn を次のように実行しました: 入力: {"username":"sashas123","password":"test"} で失敗しました: ReferenceError: user is not defined at main. js:43:5
E2014-09-26T17:38:50.474Z] v10: クラウド関数のログインを次のように実行しました:
入力: {"username":"student123","password":"test"} で失敗しました: ReferenceError: user is not defined at main. js:43:5
次のデータ ブラウザーのスナップショットは、上記のユーザーが明確に定義されていることを示しています。
![ユーザー クラスの解析][1]
Cloud Code を介してサーバー側で user.LogIn を呼び出すことに問題はありますか、それとも Unity の問題ですか?