Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Facebook Login/Signup Fails - Server shows 404 with Safari 11 requesting favicon.ico #4499

Closed
otymartin opened this issue Jan 14, 2018 · 5 comments

Comments

@otymartin
Copy link

otymartin commented Jan 14, 2018

Problem

@flovilmart

Some of my users cant Login/Signup . My app uses only Facebook logins.

Facts

  • All users affected are iPhone users with iOS 11.
  • This issue has affected 2 users - Both in the U.S.
  • In one case, PFFacebookUtils completely fails to create a new user (I dont think safari even opens)
  • In another case, a user is created but fails to perform graph request. So user only has objectId & username

Expected Results

  • I expect safari to open and allow the user to approve Facebook login request, perform graph request then update user object with graph data.

Actual Outcome

  • The safari window never opens for one user
  • For the other I assume it did because a user was created even though the signup was incomplete.

On GCP - I get the following HTTP 404 logs.

2018-01-14 16:27:36.629 EST
GET
404
148 B
3 ms
Safari 11
/favicon.ico
 "GET /favicon.ico" 404 148 "http://serverName.appspot.com/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_1) AppleWebKit/604.3.5 (KHTML, like Gecko) Version/11.0.1 Safari/604.3.5"
Expand all | Collapse all {
 httpRequest: {
  latency:  "0.003s"    
  referer:  "http://serverName.appspot.com/"    
  remoteIp:  "bleep"    
  requestMethod:  "GET"    
  requestUrl:  "/favicon.ico"    
  responseSize:  "148"    
  status:  404    
  userAgent:  "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_1) AppleWebKit/604.3.5 (KHTML, like Gecko) Version/11.0.1 Safari/604.3.5"    
 }
 insertId:  "bleep"   
 jsonPayload: {
  appLatencySeconds:  "0.003"    
  latencySeconds:  "0.003"    
  time:  null    
  trace:  "bleep"    
 }
 labels: {
  compute.googleapis.com/zone:  "us-central1-f"    
 }
 logName:  "projects/serverName/logs/appengine.googleapis.com%2Fnginx.request"   
 receiveTimestamp:  "2018-01-14T21:27:39.430209501Z"   
 resource: {
  labels: {
   module_id:  "default"     
   project_id:  "serverName"     
   version_id:  "20180107t162045"     
  }
  type:  "gae_app"    
 }
 timestamp:  "2018-01-14T21:27:36.629Z"   
}

Logs/Trace

In my terminal logs, I get the following.

error: Error generating response. { MongoError: no connection available
    at nextFunction (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb-core/lib/cursor.js:540:25)
    at Cursor.next [as _next] (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb-core/lib/cursor.js:699:3)
    at fetchDocs (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb/lib/cursor.js:857:10)
    at toArray (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb/lib/cursor.js:884:3)
    at /Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb/lib/cursor.js:841:5
    at Cursor.toArray (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb/lib/cursor.js:840:10)
    at MongoCollection._rawFind (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/parse-server/lib/Adapters/Storage/Mongo/MongoCollection.js:56:26)
    at MongoSchemaCollection._fetchAllSchemasFrom_SCHEMA (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/parse-server/lib/Adapters/Storage/Mongo/MongoSchemaCollection.js:156:29)
    at _schemaCollection.then.schemasCollection (/Users/Desktop/dev/Servers/AppName Server/node_modules/parse-server/lib/Adapters/Storage/Mongo/MongoStorageAdapter.js:327:81)
    at process._tickDomainCallback (internal/process/next_tick.js:129:7) name: 'MongoError', message: 'no connection available' } name=MongoError, message=no connection available
error: Uncaught internal server error. { MongoError: no connection available
    at nextFunction (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb-core/lib/cursor.js:540:25)
    at Cursor.next [as _next] (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb-core/lib/cursor.js:699:3)
    at fetchDocs (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb/lib/cursor.js:857:10)
    at toArray (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb/lib/cursor.js:884:3)
    at /Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb/lib/cursor.js:841:5
    at Cursor.toArray (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb/lib/cursor.js:840:10)
    at MongoCollection._rawFind (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/parse-server/lib/Adapters/Storage/Mongo/MongoCollection.js:56:26)
    at MongoSchemaCollection._fetchAllSchemasFrom_SCHEMA (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/parse-server/lib/Adapters/Storage/Mongo/MongoSchemaCollection.js:156:29)
    at _schemaCollection.then.schemasCollection (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/parse-server/lib/Adapters/Storage/Mongo/MongoStorageAdapter.js:327:81)
    at process._tickDomainCallback (internal/process/next_tick.js:129:7) name: 'MongoError', message: 'no connection available' } MongoError: no connection available
    at nextFunction (/Users/me/Desktop/dev/Servers AppName Server/node_modules/mongodb-core/lib/cursor.js:540:25)
    at Cursor.next [as _next] (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb-core/lib/cursor.js:699:3)
    at fetchDocs (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb/lib/cursor.js:857:10)
    at toArray (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb/lib/cursor.js:884:3)
    at /Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb/lib/cursor.js:841:5
    at Cursor.toArray (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb/lib/cursor.js:840:10)
    at MongoCollection._rawFind (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/parse-server/lib/Adapters/Storage/Mongo/MongoCollection.js:56:26)
    at MongoSchemaCollection._fetchAllSchemasFrom_SCHEMA (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/parse-server/lib/Adapters/Storage/Mongo/MongoSchemaCollection.js:156:29)
    at _schemaCollection.then.schemasCollection (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/parse-server/lib/Adapters/Storage/Mongo/MongoStorageAdapter.js:327:81)
    at process._tickDomainCallback (internal/process/next_tick.js:129:7)
MongoError: no connection available
    at nextFunction (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb-core/lib/cursor.js:540:25)
    at Cursor.next [as _next] (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb-core/lib/cursor.js:699:3)
    at fetchDocs (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb/lib/cursor.js:857:10)
    at toArray (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb/lib/cursor.js:884:3)
    at /Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb/lib/cursor.js:841:5
    at Cursor.toArray (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/mongodb/lib/cursor.js:840:10)
    at MongoCollection._rawFind (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/parse-server/lib/Adapters/Storage/Mongo/MongoCollection.js:56:26)
    at MongoSchemaCollection._fetchAllSchemasFrom_SCHEMA (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/parse-server/lib/Adapters/Storage/Mongo/MongoSchemaCollection.js:156:29)
    at _schemaCollection.then.schemasCollection (/Users/me/Desktop/dev/Servers/AppName Server/node_modules/parse-server/lib/Adapters/Storage/Mongo/MongoStorageAdapter.js:327:81)
    at process._tickDomainCallback (internal/process/next_tick.js:129:7)

Environment Setup

  • Server

    • parse-server version: 2.7.1
    • Localhost or remote server?: Remove Server Google Cloud App Engine
  • Database

    • MongoDB version: mongod version: 3.2.16 (MMAPv1)
    • Storage engine: Google Cloud Storage
    • Hardware: mLab shared cluster
    • Localhost or remote server? : mLab
@montymxb
Copy link
Contributor

Specifically regarding your 'no connection available' MongoError I would double check that you're properly connected to your cluster from parse server. You can always double check that your mongoUrl is correct by connecting with mongo from the terminal (provided you have the right version of the mongo client installed).

@otymartin
Copy link
Author

@montymxb Hey what what does that mean? this appears to only be an issue for 2 users. The server, database and everything is the same. Let me reachout to mlab and see if its a problem on their end since you mention the "no connection" error.

@cubycode
Copy link

have this issue been fix? because some of my users are experiencing a similar issue on iOS/Swift: some Facebook account just doesn’t get properly registered on signup, the Graph function gets their ID but not their avatar, full name and email, i really don’t understand why, maybe it’s the Parse Server version? I currently use 2.6.5 on back4app.com

@otymartin
Copy link
Author

otymartin commented Feb 11, 2018

@cubycode no have yet to solve this issue. quite frustrating. Im self-hosted on GCP using 2.7. Will update if i find a cause. But from what I've gathered from friends, the Safari Favicon 404 error is not irrelevant to this issue.

@stale
Copy link

stale bot commented Sep 18, 2018

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants