Skip to content

Request.user undefined and no information in request  #2104

Closed
@PeterKaminski09

Description

@PeterKaminski09

I'm trying to access a user in cloud code so I can modify user data. I don't have access to any session tokens and request.user is undefined

Steps to reproduce

Swift:

PFCloud.callFunctionInBackground("checkUser", withParameters: nil) {
(response: AnyObject?, error: NSError?) -> Void in
let responseString = response as? String
print(responseString)
}

Main.js

Parse.Cloud.define("checkUser", function(request, response) {
console.log(request);
var user = request.user;
response.success(user);
});

Expected Results

request.user or request.user.getSessionToken() give me correct data

Actual Outcome

request.user is undefined

Environment Setup

  • Server
    • parse-server version: latest
    • Operating System: OS X El Capitan
    • Hardware: Macbook pro
    • Localhost or remote server? (AWS, Heroku, Azure, Digital Ocean, etc): Locally and AWS Beanstalk
  • Database
    • MongoDB version: latest
    • Storage engine: mLabs
    • Localhost or remote server? (AWS, mLab, ObjectRocket, Digital Ocean, etc): [FILL THIS OUT]

Logs/Trace

�[31merror�[39m: Uncaught internal server error. [TypeError: request.user is not a function] TypeError: request.user is not a function
at /var/app/current/cloud/main.js:54:24
at /var/app/current/node_modules/parse-server/lib/Routers/FunctionsRouter.js:95:11
at new Promise (/var/app/current/node_modules/parse-server/node_modules/babel-polyfill/node_modules/core-js/modules/es6.promise.js:193:7)
at handleCloudFunction (/var/app/current/node_modules/parse-server/lib/Routers/FunctionsRouter.js:89:16)
at /var/app/current/node_modules/parse-server/lib/PromiseRouter.js:286:7
at Layer.handle as handle_request
at next (/var/app/current/node_modules/parse-server/node_modules/express/lib/router/route.js:131:13)
at Route.dispatch (/var/app/current/node_modules/parse-server/node_modules/express/lib/router/route.js:112:3)
at Layer.handle as handle_request
at /var/app/current/node_modules/parse-server/node_modules/express/lib/router/index.js:277:22

I passed the session token myself, but this doesn't seem secure

{ params: { sessionToken: 'XXXXXXXXXXXXXXXXXX' },
master: false,
user: undefined,
installationId: 'xxx-xxx-xxx-xxx',
log: FileLoggerAdapter {} }

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions