Yet another Facebook app/API post I know, but please read carefully.
For better clarity, I'll add here that we're currently in 2021, March 29, their API has changed quite a lot over the last few months (and might change as well), therefore most answers on StackO aren't working anymore.
Furthermore, IMO their documentations aren't fully updated yet to the current version, and have things that doesn't exist anymore (like Dev/Live mode for ex).
After making sure that my app can work with my localhost by changing:
Settings -> Basic -> App Domains -> 'localhost'
Settings -> Basic -> Add platform -> Website -> 'http://localhost:8000/')
Add Product -> Facebook Login -> leave everything empty
Make sure to run my localhost with localhost and not 127.0.0.1.
It seems that the Facebook JavaScript SDK doesn't work from an http url.
As I'm working on localhost (so not in https) it is quite annoying. After checking the FB documentation and some tooltips in the Facebook login settings, it seems that localhost should work without https enabled. And if that wasn't enough: the Enforce HTTPS button is greyed-out and cannot be turned off anymore.
I also tried to put something in the Valid OAuth Redirect URIs, but the field/tooltip doesn't let you put http://localhost:8000/:
http://localhost redirects are automatically allowed while in development mode only and do not need to be added here.
As mentioned above, there is no such thing as development mode anymore, or at least no button or anything to change or even see the mode on their new interface.
Did anyone managed to make his localhost work with the JS SDK?
Ngrok and other answers are indeed appreciated, but I would like to know first if there is a "real" solution (on FB side) at this problem ("No there isn't yet" is an acceptable answer as it will probably save a lot of time for other people).
Thanks a lot!
Edit: The dev/live mode distinction still exists, but only for apps developed by individual developers. For business apps, they have been replaced with access levels. (see comment, #CBroe)
However, I tried without being in business, but it didn't work either.
It seems like there isn't any solution for my problem on Facebook side, the JavaScript error clearly says:
The Login Button plugin no longer work on http pages. Please update your site to use https for Facebook login.
As the link in the error goes to a blog post (not the documentation) and as I didn't find anything related to that problem in FB doc, well... can't use it in http pages.
Therefore for other people searching for a solution, I would recommend another StackO thread on how to turn your localhost django app to run in https (as I'm working with Django).
For those working with Google Chrome, following the above thread, you'll need to turn off Chrome error about your connection not being private, here is how:
open a new tab
paste : chrome://flags/#allow-insecure-localhost
enable the option 'Allow invalid certificates for resources loaded from localhost.'
Please, feel free to post another solution to my question if there is finally a way to make it work, or an update from FB side later on.
Related
Pretty much what the title says.
There are tons of questions about this but the vast majority was only a matter of a missing HTTPS URL, a couple are due to misconfigured app restrictions, and the rest are unsolved.
I have no country or age restrictions in my app, I have both HTTP and an HTTPS URLs, I can see the page when logged in as a page admin and everything works fine, but when visiting the page while logged out, I don't see the tab.
Also, this is not a matter of clicking the tab and not having any content displayed, like in some other questions here. If I'm logged in with my The actual tab link is missing and if I copy the tab URL from when I'm logged in and then try to access it while logged out, I am simply redirected to the page.
I don't think it matters much but this is a tab that has been created via the Graph API. The Graph API docs don't mention anything about tab visibility, at least as far as I see.
This is driving me crazy, I've been at it for hours and can't find any solution or even a hint at what the problem might be.
Any ideas?
EDIT: All I described above is happening with our staging application, which has a self-signed SSL certificate. The live application, which has a "proper" SSL certificate, works just fine. Could the self-signed certificate be the cause of the problem?
Had the same issue this morning. Remove any audience restrictions from your app e.g 13 + or location as this means people have to login to see your app.
So it turns out it was stupidly simple: it was happening on our staging application but not on our live application because our live application uses a non-test FB app, while staging uses a test FB app, which is never seen by people who are not developers (or other staff) on that app.
Talk about wasted time...
I've recently installed the browser plugin Disconnect to keep Facebook, Twitter and Google from recording my browser history as I use the regular web while still letting me use those services when I choose to.
Can anyone explain how Disconnect works?
I'm interested in how it works to understand where my web experience might be changed or compromised and as an intellectual curiosity about what these sites are doing and how it can be blocked.
There are detailed descriptions of what our extensions do in the extension galleries (and someday soon, our site), e.g.:
https://chrome.google.com/webstore/detail/jeoacafpbcihiomhlakheieifhpjdfeo
More technically, all our extension code is open source (and well commented and otherwise readable, if I do say so myself):
https://github.com/disconnectme
I'm only guessing, but to track you, google, facebook and twitter send you a cookie to identify you. Then if you browse the web a display page that contain an adsense banner, a g+1 button an analytic script, a facebook/twitter widget, google , facebook and tweeter access this cookie.
So to prevent them to record your browsing, maybe the addon filter the cookie sent in http request or filter google/fb/twitter script/iframe/url from the viewed page.
Hope this could give you a hint.
Regards
I'm working on an iframe style app that pulls the facebook optimized page available at http://store.starrco.com/?store_mode=facebook. I've done other, admittedly much simpler, iframe apps before without issue but though I've configured this one more or less the same when I try to view the canvas url it remains blank.
My settings can be seen here: http://www.abstraktmg.com/clients/starrco/starrcofbsettings.jpg
I've tried a few different permutations of this with the same results, this is the most complete setup though and most closely matches the settings template I was given.
This page is being generated by Webasyst's shop-script, which is specifically supposed to support this. The obvious answer then is to contact their support which I did, but after assuring them that my app settings matched their template, they said I needed to contact Facebook support and this is as close as I could find to any proper support system.
I checked both http and https versions of store.starrco.com/?store_mode=facebook and both worked outside of facebook.
However, there may be some framebusting code which might prevent the site from being loaded in an iframe. And I see that your settings appear to be missing the app domain entry.
I ran into the same problem, especially in Chrome and Firefox. The problem is, when the user is surfing with https on Facebook, the https Version of the iframe is called. But the browser do not show invalid certificate problems until you to right click page information.
You need to have a signed SSL cert by a CA trusted in the browser.
If the user has accepted it without the iframe - outside of Facebook, it works.
So, for whatever reason, some people can't see the custom facebook page tab. Not sure why, especially when I can see it just fine.
Link: http://on.fb.me/rKNxUS
Let me know if you need more info.
Do you have a https version of the page tab? If they're account always uses ssl and you don't you might run into issues. Other times I've seen resetting the app secret help with issues like this.
It shows a standard browser error page to me. "This webpage is not available Google Chrome's connection attempt to incontrolwebsites.com was rejected. The website may be down, or your network may not be properly configured."
May it be possible you didn't upload the webpage to the production server?
If it opens correctly from your machine: check that you don't have a custom DNS setting to point to your local webserver instead of the production server.
Its quite possible I'm missing something obvious here; I hope so.
I have been trying to get a Facebook game that posts to the user's wall after the game has finished working. As I understand it, this should be a pretty simple process (and there appears to be several different approaches).
I have tried most of these, and they all seem to fail for the same reason; I do not have a 'connect' URL (which, as I understand it, is also called a canvas callback URL?) set correctly.
This sounds easy to fix, but it seems like the application settings page has recently changed. Often a 'connect' tab is referred to, but this no longer exists. All I have is a 'Facebook integration' tab and this has only the canvas URL, there doesn't appear to be a connect URL.
You need to set the URL in the Website Section. You'd be best settings the domain as well just to make sure. I find it best practise to set the URL in the Facebook Integration tab as well as then Website tab regardless of the type of Facebook integration I am creating
You are correct that the error message is out of date, the connect URL is the Website URL now (just wanted to clarify)