parse-community / parse-community/parse-server
Error 206 cannot modify user for new Facebook user
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 21.4k
- Forks
- 4.8k
- Avg merge
- 7h 45m
- Merged PRs (30d)
- 11
Description
Hello
I am getting error 206 after new Facebook user is saved and reason seems to be nil sessionToken.
I am facing this for Apple sign in also randomly. This is probably getting fixed by https://github.com/parse-community/parse-server/pull/6416. Don't know whether Facebook issue will also be fixed.
I have one old account created on Heroku Parse server which works fine ie i am able to save attributes after login.
I was running server v3.9.0. tried upgrading till 4.0.2 but still failing.
I am updating PFUser object post login locally in iOS client using Swift. Not using cloud code for this.
Also failing on back4app v3.9.0. Sign in with Apple also failing on back4app but works randomly.
Works on local setup consistently. Local server installed using bootstrap.sh script.
I have seen some issued dated 2016 fixing this error but server code seems to have changed lot so cannot view the same code referred in https://github.com/parse-community/parse-server/pull/952
using FBSDKCoreKit 5.15.1, FBSDKLoginKit 5.15.1
Steps to reproduce
on iOS, Try login using a facebook account that is not yet created on Parse.
Running iOS 13.3.1
Expected Results
After successful login, should be able to save other attributes in PFUser.current() object
Actual Outcome
The login is successful but saving any attributes fails with error 206 "cannot modify user xxxxx"
Fails on back4app also. v3.9.0
Both Apple and Facebook new user registration and update work fine in local environment.
Environment Setup
-
Server
- parse-server version (Be specific! Don't say 'latest'.) : 3.9.0 to 4.0.2 (Local 3.10.0)
- Operating System: heroku-18 (Local MacOS 10.15.3)
- Hardware: heroku-18 (Local MacOS 10.15.3)
- Localhost or remote server? (AWS, Heroku, Azure, Digital Ocean, etc): Both as mentioned above
-
Database
- MongoDB version: mLab 3.6.12 (Local 4.2.3)
- Storage engine: mLab
- Hardware: mLab
- Localhost or remote server? (AWS, mLab, ObjectRocket, Digital Ocean, etc): both
Logs/Trace
Mar 15 02:51:40 yovl app/web.1 error: Parse error: Cannot modify user kc30Xbk1wA. {"code":206,"stack":"Error: Cannot modify user kc30Xbk1wA.\n at RestWrite.runDatabaseOperation (/app/node_modules/parse-server/lib/RestWrite.js:1170:11)\n at /app/node_modules/parse-server/lib/RestWrite.js:127:17\n at processTicksAndRejections (internal/process/task_queues.js:97:5)"}
package.json used for deployment to Heroku
{
"name": "parse-server-example",
"version": "1.4.0",
"description": "Based on example Parse API server using the parse-server module",
"main": "index.js",
"repository": {
"type": "git",
"url": "https://github.com/ashish-naik/parse-server.git"
},
"license": "MIT",
"dependencies": {
"express": "4.17.1",
"parse-server": "4.1.0",
"underscore":"*",
"parse": "2.11.0"
},
"scripts": {
"start": "node index.js"
},
"engines": {
"node": ">= 8",
"npm": ">= 5.7.1"
}
}
auth section in index.js
auth: {
facebook: {
appIds: process.env.FACEBOOK_APP_ID
},
apple: {
client_id: process.env.IOS_BUNDLE_ID
}
},
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with lib/RestWrite.js at the reported failure near line 1170, then inspect the auth configuration in index.js and the linked pull request 6416. Reproduce with a newly created Facebook or Apple user on a remote deployment, and compare with the local setup. Done means the new user can save attributes after login without error 206, with regression coverage for the affected flow.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, node.js, swift
- Domain
- authentication, backend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100