Comments (3)
There is a whole discussion on this issue: http://stackoverflow.com/questions/7131909/facebook-callback-appends-to-return-url
Most of the solutions involve manual URL cleanup via JavaScript. E.g.
if (window.location.hash == '#_=_') {
window.location.hash = ''; // for older browsers, leaves a # behind
history.pushState('', document.title, window.location.pathname); // nice and clean
e.preventDefault(); // no page reload
}
In other words it's the Facebook's fault. But they apparently have a good reason for doing that: https://developers.facebook.com/x/bugs/318390728250352/
Now, the reason why I don't want to add that JavaScript code to cleanup the hash URL is to avoid putting non-application logic inside main.js
. Since this is a boilerplate project I want to keep client-side javascript file to be clean and simple, instead of fixing other's shortcomings:
$(document).ready(function() {
// Place JavaScript code here...
});
And as much as I'd like to add lots of client-side code to make this boilerplate even more impressive, doing so will only confuse other developers. But you do have an option of adding the above mention JS code yourself, to clean up the URL hash manually, if it bothers you.
from hackathon-starter.
I'd like to offer an alternative viewpoint. I think this is exactly the type of thing to include in a boilerplate framework (along with good comments/documentation about why it's there).
Why?
Because otherwise assuming all 4000+ people who starred this project actually use the framework someday they all have to independently figure out this quirk of facebook's and fix it. I don't want to have to search Stack Overflow.
I LOVE it when boilerplate frameworks deal with quirks like this so I can just focus on building stuff. Heck - why did jQuery and Bootstrap become popular in the first place? Because they dealt with all the cross-browser crap. ;)
from hackathon-starter.
I agree with @sahat.
Some people won't use Facebook connect, so if we add it to main.js, we might cause more confusion. And to echo Sahat, it's Facebook's fault so we shouldn't write glue code for them; they could later decide to fix it.
The best solution is to provide a link to S.O. in the README under the Facebook section. Submitting a PR...
from hackathon-starter.
Related Issues (20)
- Error building docker image HOT 7
- Learn node
- Can we use nodemon by default? HOT 2
- Brave browser blocks the cookieconsent HOT 1
- Node 20 HOT 4
- mongoose connection HOT 3
- Add JWT Authentication Support
- Implement Passport Serialization and Deserialization HOT 5
- Implement support for Novu as a notification infrastructure HOT 1
- Will make navbar remain on top on scrolling HOT 5
- Uniform text colour under "API Examples" tab HOT 11
- Creating seperate database config file HOT 2
- Destroying the cookies after logout of user HOT 2
- Adding OAUTH 2.0 HOT 3
- Refactoring config/passport.js HOT 5
- Mongo Running, Connection Error
- Asked assistant HOT 1
- Migrate from namespaced javaScript to Modular javaScript
- Encountering an issue with the script execution in Windows environment. HOT 1
- Critical dependency error during install: formidable <3.2.4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from hackathon-starter.